电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

VHDL波形发生器VIP专享VIP免费

VHDL波形发生器_第1页
VHDL波形发生器_第2页
VHDL波形发生器_第3页
函数发生器的仿真设计 目的:利用VHDL 语言为编程工具,以ALTEAR 的FPGA 芯片为编程对象,以QUARTUS II 为EDA 开发软件平台,设计具有一定复杂度实用系统。主要目的是使学生初步了解软件设计相关知识及步骤、进一步理解TOP——DOWN 设计思想、更全面地掌握 VHDL 语言相关知识、了解实用程序的调试方法。 系统功能介绍及总体结构设计 (1)功能介绍: 函数发生器由波形选择开关控制波形的输出,分别能输出方波、阶梯波、锯齿波递减和锯齿波递增、三角波、正弦波六种波形,考虑程序的容量,每种波形在一个周期内均取32个取样点。本设计采用自顶向下的设计方法进行设计。clock为系统时钟,clr为系统清零信号,fpxs为分频器的分频系数,s是波形选择开关,系统获得的数字信号经D/A转换器即可转换成模拟信号输出波形。 (2)总体结构设计:如下图带分频功能的函数发生器系统图1 LIBRARY IEEE;--选择器 USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY Xuanzeqi IS PORT ( sel: in std_logic_vector(2 downto 0); d1,d2,d3,d4,d5,d6:in std_logic_vector(7 downto 0); q:out std_logic_vector(7 downto 0)); END ENTITY Xuanzeqi; ARCHITECTURE behave OF Xuanzeqi IS BEGIN PROCESS(sel) BEGIN CASE sel IS WHEN "001"=>q<=d1;--方波 WHEN "010"=>q<=d2;--阶梯波 WHEN "011"=>q<=d3;--锯齿波递减 WHEN "100"=>q<=d4;--锯齿波递增 WHEN "101"=>q<=d5;--三角波 WHEN "110"=>q<=d6;--正弦波 WHEN OTHERS=>null; END CASE; END PROCESS; END ARCHITECTURE behave; LIBRARY IEEE;--方波 USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY Fangbo IS PORT ( clk,reset:in std_logic; q: out std_logic_vector(7 DOWNTO 0)); END ENTITY Fangbo; ARCHITECTURE behave OF Fangbo IS SIGNAL temp : std_logic ; BEGIN PROCESS(clk,reset) VARIABLE tmp: std_logic_vector(7 downto 0); BEGIN IF reset='0' THEN temp<='0'; ELSIF rising_edge(clk) THEN IF tmp="11111111" THEN tmp:="00000000"; ELSE tmp:=tmp+1; END IF; IF tmp<="10000000" THEN temp<='1'; ELSE temp<='0'; END IF; END IF; END PROCESS; PROCESS(clk,temp) BEGIN IF rising_edge(clk) THEN...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部