(精品)EDA技术实用教程第12章.ppt

上传人:s****8 文档编号:69874357 上传时间:2023-01-10 格式:PPT 页数:34 大小:392KB
返回 下载 相关 举报
(精品)EDA技术实用教程第12章.ppt_第1页
第1页 / 共34页
(精品)EDA技术实用教程第12章.ppt_第2页
第2页 / 共34页
点击查看更多>>
资源描述

《(精品)EDA技术实用教程第12章.ppt》由会员分享,可在线阅读,更多相关《(精品)EDA技术实用教程第12章.ppt(34页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、EDA 技术实用教程技术实用教程第第 12 12 章章 系统仿真系统仿真12.1 仿真仿真 K KX康芯科技康芯科技仿真也称模拟(仿真也称模拟(Simulation)是对电路设计的一种间接的检测方法,是利用计算机对整是对电路设计的一种间接的检测方法,是利用计算机对整个硬件系统进行模拟检测,但却可以不接触具体的硬件系个硬件系统进行模拟检测,但却可以不接触具体的硬件系统。统。12.2 VHDL源程序仿真源程序仿真 K KX康芯科技康芯科技图图12-1 VHDL仿真流程仿真流程 12.2 VHDL源程序仿真源程序仿真 K KX康芯科技康芯科技【例【例12-1】LIBRARY IEEE;USE IEE

2、E.STD_LOGIC_1164.ALL;ENTITY and1 ISPORT(aaa,bbb:IN STD_LOGIC;ccc:OUT STD_LOGIC);END and1;ARCHITECTURE one OF and1 ISBEGINccc=aaa AND bbb;END;12.2 VHDL源程序仿真源程序仿真 K KX康芯科技康芯科技【例例12-2】LIBRARY IEEE;USE IEEE.std_logic_1164.all;ENTITY TRIBUF_and1 IS GENERIC(ttri:TIME:=1 ns;ttxz:TIME:=1 ns;ttzx:TIME:=1 ns)

3、;PORT(in1:IN std_logic;oe :IN std_logic;y :OUT std_logic);END TRIBUF_and1;ARCHITECTURE behavior OF TRIBUF_and1 ISBEGIN PROCESS(in1,oe)BEGIN IF oeEVENT THEN (接下页)接下页)K KX康芯科技康芯科技IF oe=0 THEN y=TRANSPORT Z AFTER ttxz;ELSIF oe=1 THEN y=TRANSPORT in1 AFTER ttzx;END IF;ELSIF oe=1 THEN y=TRANSPORT in1 AFT

4、ER ttri;ELSIF oe=0 THEN y=TRANSPORT Z AFTER ttxz;END IF;END PROCESS;END behavior;LIBRARY IEEE;USE IEEE.std_logic_1164.all;USE work.tribuf_and1;ENTITY and1 IS PORT(aaa:IN std_logic;bbb:IN std_logic;ccc:OUT std_logic);END and1;ARCHITECTURE EPF10K10LC84_a3 OF and1 IS .END EPF10K10LC84_a3;12.3 仿真激励信号的产生

5、仿真激励信号的产生 K KX康芯科技康芯科技【例例12-3】LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY ADDER4 IS PORT(a,b:IN INTEGER RANGE 0 TO 15;c:OUT INTEGER RANGE 0 TO 15);END ADDER4;ARCHITECTURE one OF ADDER4 ISBEGIN c=a+b;END one;第一种方法第一种方法 :12.3 仿真激励信号的产生仿真激励信号的产生 K KX康芯科技康芯科技【例例12-4】ENTITY SIGGEN IS PORT(sig1:OUT IN

6、TEGER RANGE 0 TO 15;sig2:OUT INTEGER RANGE 0 TO 15);END;ARCHITECTURE Sim OF SIGGEN ISBEGIN sig1=10,5 AFTER 200 ns,8 AFTER 400 ns;sig2 a,sig2=b);END;12.3 仿真激励信号的产生仿真激励信号的产生 K KX康芯科技康芯科技图图12-3 BENCH仿真波形图仿真波形图 12.3 仿真激励信号的产生仿真激励信号的产生 K KX康芯科技康芯科技force ,-repeat 第二种方法第二种方法 :force a 0 (强制信号的当前值为强制信号的当前值为0

7、)force b 0 0,1 10 (强制信号强制信号b在时刻在时刻0的值为的值为0,在时刻,在时刻10的值为的值为1)force clk 0 0,1 15 repeat 20(clk为周期信号,周期为为周期信号,周期为20 force a 10 0,5 200,8 400force b 3 0,4 100,6 300 12.4 VHDL测试基准测试基准 K KX康芯科技康芯科技【例例12-6】Library IEEE;use IEEE.std_logic_1164.all;entity counter8 is port(CLK,CE,LOAD,DIR,RESET:in STD_LOGIC;D

8、IN:in INTEGER range 0 to 255;COUNT:out INTEGER range 0 to 255);end counter8;architecture counter8_arch of counter8 isbeginprocess(CLK,RESET)variable COUNTER:INTEGER range 0 to 255;begin if RESET=1 then COUNTER:=0;elsif CLK=1 and CLKevent then if LOAD=1 then COUNTER:=DIN;(接下页)接下页)K KX康芯科技康芯科技Else if

9、CE=1 then if DIR=1 then if COUNTER=255 then COUNTER:=0;Else COUNTER:=COUNTER+1;end if;else if COUNTER=0 then COUNTER:=255;Else COUNTER:=COUNTER-1;end if;end if;end if;end if;end if;COUNT CLK,RESET=RESET,CE=CE,LOAD=LOAD,DIR=DIR,DIN=DIN,COUNT=COUNT);CLK_IN:processBegin (接下页)接下页)K KX康芯科技康芯科技if end_sim=

10、false then CLK=0;Wait for 15 ns;CLk=1;Wait for 15 ns;Else Wait;end if;end process;STIMULUS:processBeginRESET=1;CE=1;-计数使能计数使能 DIR=1;-加法计数加法计数 DIN=250;-输入数据输入数据LOAD=0;-禁止加载输入的数据禁止加载输入的数据 wait for 15 ns;RESET=0;wait for 1 us;CE=0;-禁止计数脉冲信号进入禁止计数脉冲信号进入 wait for 200 ns;CE=1;wait for 200 ns;(接下页)接下页)K KX

11、康芯科技康芯科技DIR=0;wait for 500 ns;LOAD=1;wait for 60 ns;LOAD=0;wait for 500 ns;DIN=60;DIR=1;LOAD=1;wait for 60 ns;LOAD=0;wait for 1 us;CE=0;wait for 500 ns;CE=1;wait for 500 ns;end_sim:=true;wait;end process;WRITE_TO_FILE:WRITE_RESULTS(CLK,RESET,CE,LOAD,DIR,DIN,COUNT);End testbench_arch;12.4 VHDL测试基准测试基

12、准 K KX康芯科技康芯科技图图12-4 8位计数器测试基准仿真部分波形图位计数器测试基准仿真部分波形图 12.5 VHDL系统级仿真系统级仿真 K KX康芯科技康芯科技图图12-5 VHDL系统仿真模型示意图系统仿真模型示意图 12.5 VHDL系统级仿真 12.6 使用使用ModelSim进行仿真进行仿真 K KX康芯科技康芯科技12.5 VHDL系统级仿真【例【例12-8】LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_unsigned.all;ENTITY cnt4 ISPORT(rst:IN STD_LOGIC;

13、d:IN STD_LOGIC_VECTOR(3 downto 0);load:IN STD_LOGIC;clk,ce:IN STD_LOGIC;q:OUT STD_LOGIC_VECTOR(3 downto 0);cout:OUT STD_LOGIC);END cnt4;ARCHITECTURE syn OF cnt4 ISsignal count:std_logic_vector(3 downto 0);BEGIN (接下页)接下页)K KX康芯科技康芯科技12.5 VHDL系统级仿真 cntproc:process(clk,rst)beginif rst=1 thencount 0);el

14、sif rising_edge(clk)thenif ce=1 thenif load=1 thencount=d;elsecount=count+1;end if;end if;end if;end process;coutproc:process(clk,rst)beginif rst=1 thencout=0;elsif rising_edge(clk)thenif count=1111 thencout=1;elsecout=0;end if;end if;end process;q=count;END syn;12.6 使用使用ModelSim进行仿真进行仿真 K KX康芯科技康芯科

15、技图图12-6 ModelSim的启动界面的启动界面 12.5 VHDL系统级仿真 12.6 使用使用ModelSim进行仿真进行仿真 K KX康芯科技康芯科技图图12-7 建立工程建立项目建立工程建立项目 12.5 VHDL系统级仿真 12.6 使用使用ModelSim进行仿真进行仿真 K KX康芯科技康芯科技图图12-8 开始编译仿真文件开始编译仿真文件 12.5 VHDL系统级仿真 12.6 使用使用ModelSim进行仿真进行仿真 K KX康芯科技康芯科技图图12-9 ModelSim编译时的提示信息编译时的提示信息 12.5 VHDL系统级仿真 12.6 使用使用ModelSim进行

16、仿真进行仿真 K KX康芯科技康芯科技图图12-10 装载设计模块装载设计模块 12.5 VHDL系统级仿真 K KX康芯科技康芯科技图图12-11 ModelSim的仿真观察窗的仿真观察窗 12.5 VHDL系统级仿真 K KX康芯科技康芯科技12.5 VHDL系统级仿真【例【例12-9】library ieee;use ieee.std_logic_1164.all;ENTITY wavegen ISPORT(clk,rst:OUT STD_LOGIC);end wavegen;ARCHITECTURE sim OF wavegen isconstant cycle:Time:=10 ns

17、;BEGINprocess beginclk=0;wait for cycle/2;clk=1;wait for cycle/2;end process;process beginrst=1;wait for cycle*5;rst=0;wait;end process;END sim;12.6 使用使用ModelSim进行仿真进行仿真 K KX康芯科技康芯科技图图12-12 ModelSim的波形观察窗的波形观察窗 12.5 VHDL系统级仿真 12.6 使用使用ModelSim进行仿真进行仿真 K KX康芯科技康芯科技图图12-12 时钟与复位信号生成时钟与复位信号生成 12.5 VHDL

18、系统级仿真 12.7 VHDL的的RTL表述表述 K KX康芯科技康芯科技12.5 VHDL系统级仿真 12.7.1 行为描述行为描述【例【例12-10】LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY cunter_up ISPORT(reset,clock:IN STD_LOGIC;counter:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END;ARCHITECTURE behv of cunter_up ISSIGNAL cnt_ff:UNSIGNED(

19、7 DOWNTO 0);BEGINPROCESS(clock,reset,cnt_ff)BEGIN IF reset=1 THEN cnt_ff=X00;ELSIF(clock=1 AND clockEVENT)THEN cnt_ff=cnt_ff+1;END IF;END PROCESS;counter=STD_LOGIC_VECTOR(cnt_ff);END ARCHITECTURE behv;12.7 VHDL的的RTL表述表述 K KX康芯科技康芯科技12.5 VHDL系统级仿真 12.7.1 行为描述行为描述【例【例12-11】MODULE counter_up Clock,rese

20、t,PIN;Counter7.counter0 PIN ISTYPE COM;Cnt_t_ff0 NODE ISTYPE REG;Counter=counter7.counter0;Cnt=cnt_t_ff0;EQUATIONS Cnt.CLK=clock;Cnt.AR =reset ;Cnt:=cnt.FB+1;Counter=cnt;END counter_up 12.7 VHDL的的RTL表述表述 K KX康芯科技康芯科技12.5 VHDL系统级仿真 12.7.2 数据流描述数据流描述 12.7.3 结构描述结构描述 元件说明元件说明:描述局部接口。:描述局部接口。元件例化元件例化:相对于其它元件放置元件。:相对于其它元件放置元件。元件配置元件配置:指定元件所用的设计实体。:指定元件所用的设计实体。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com