欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年EDA技术实用教程课后答案---潘松-黄继业.docx

    • 资源ID:12787027       资源大小:203.22KB        全文页数:19页
    • 资源格式: DOCX        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年EDA技术实用教程课后答案---潘松-黄继业.docx

    精品学习资源3-3 给出一个 4 选 1 多路选择器的 VHDL 描述;选通把握端有四个输入:S0、S1、S2、S3;当且仅当 S0=0 时:Y=A ;S1=0 时:Y=B ; S2=0 时:Y=C ; S3=0 时:Y=D ;-解: 4 选 1 多路选择器 VHDL程序设计;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mux41a ISPORTA,B,C,D : IN STD_LOGIC;S0,S1,S2,S3 : IN STD_LOGIC ;Y : OUT STD_LOGIC;END ENTITY mux41a;ARCHITECTURE one OF mux41a ISSIGNAL S0_3 : STD_LOGIC_VECTOR3 DOWNTO 0;BEGIN S0_3<=S0&S1&S2&S3 ;y<=A WHEN S0_3="0111" ELSEB WHEN S0_3="1011" ELSE C WHEN S0_3="1101" ELSE D WHEN S0_3="1110" ELSE 'Z';END ARCHITECTURE one;3-4 给出 1 位全减器的 VHDL描述;最终实现 8 位全减器;要求 :1第一设计 1 位半减器 ,然后用例化语句将它们连接起来,图 4-20 中 h_suber 是半减器 ,diff 是输出差 diff=x-欢迎下载精品学习资源xinay,s_outs_out=1,x<y,sub_in 是借位输入;欢迎下载精品学习资源yin是借位输出bcdiff_out欢迎下载精品学习资源图 3-19 1 位全加器-解1.1:实现 1 位半减器 h_suberdiff=x-y ; s_out=1,x<y LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY h_suber ISPORTx,y: IN STD_LOGIC;diff,s_out: OUT STD_LOGIC;END ENTITY h_suber ;ARCHITECTURE hs1 OF h_suber IS BEGINDiff <= x XOR NOT y;欢迎下载精品学习资源s_out <= NOT x AND y;END ARCHITECTURE hs1;-解1.2:接受例化实现图4-20 的 1 位全减器LIBRARY IEEE; -1 位二进制全减器顺层设计描述USE IEEE.STD_LOGIC_1164.ALL;ENTITY f_suber ISPORTxin,yin,sub_in:IN STD_LOGIC;sub_out,diff_out: OUT STD_LOGIC;END ENTITY f_suber; ARCHITECTURE fs1 OF f_suber ISCOMPONENT h_suber- 调用半减器声明语句PORTx, y:IN STD_LOGIC;diff,s_out: OUT STD_LOGIC;END COMPONENT;SIGNAL a,b,c: STD_LOGIC; -定义 1 个信号作为内部的连接线;BEGINu1: h_suber PORT MAPx=>xin,y=>yin,diff=>a,s_out=>b;u2: h_suber PORT MAPx=>a, y=>sub_in, diff=>diff_out,s_out=>c;sub_out <= c OR b ;END ARCHITECTURE fs1;2 以 1 位全减器为基本硬件 ,构成串行借位的8 位减法器 ,要求用例化语句来完成此项设计减法运算是x-y-sun_in=difft ;欢迎下载精品学习资源x7 y7a6x1 y1x0 y0 sinxinsub_out yinu7 sub_in diff_out . .xinsub_out yinu1 sub_in diff_outxinsub_out yinu0 sub_in diff_outsout diff7a1diff1a0diff0欢迎下载精品学习资源串行借位的 8 位减法器-解2 :接受例化方法,以1 位全减器为基本硬件;实现串行借位的8 位减法器 上图所示 ;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY suber_8 ISPORTx0,x1,x2,x3,x4,x5,x6,x7:IN STD_LOGIC;欢迎下载精品学习资源y0,y1,y2,y3,y4,y5,y6,y7,sin:IN STD_LOGIC;diff0,diff1,diff2,diff3:OUT STD_LOGIC;diff4,diff5,diff6,diff7,sout: OUT STD_LOGIC;END ENTITY suber_8 ;ARCHITECTURE s8 OF suber_8 ISCOMPONENT f_suber- 调用全减器声明语句PORTxin,yin,sub_in:IN STD_LOGIC;sub_out,diff_out: OUT STD_LOGIC;END COMPONENT;SIGNAL a0,a1,a2,a3,a4,a5,a6: STD_LOGIC ; -定义 1 个信号作为内部的连接线;BEGINu0:f_suber PORT MAPxin=>x0,yin=>y0,diff_out=>diff0,sub_in=>sin,sub_out=>a0;u1:f_suber PORT MAPxin=>x1,yin=>y1,diff_out=>diff1,sub_in=>a0,sub_out=>a1;u2:f_suber PORT MAPxin=>x2,yin=>y2,diff_out=>diff2,sub_in=>a1,sub_out=>a2;u3:f_suber PORT MAPxin=>x3,yin=>y3,diff_out=>diff3,sub_in=>a2,sub_out=>a3;u4:f_suber PORT MAPxin=>x4,yin=>y4,diff_out=>diff4,sub_in=>a3,sub_out=>a4;u5:f_suber PORT MAPxin=>x5,yin=>y5,diff_out=>diff5,sub_in=>a4,sub_out=>a5;u6:f_suber PORT MAPxin=>x6,yin=>y6,diff_out=>diff6,sub_in=>a5,sub_out=>a6;u7:f_suber PORT MAPxin=>x7,yin=>y7,diff_out=>diff7,sub_in=>a6,sub_out=>sout;END ARCHITECTURE s8;3-8 设计一个求补码的程序,输入数据是一个有符号的8 位二进制 原码 数;-解: 5-9 设计一个求补码的程序,输入数据是一个有符号的8 位二进制数;LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY org_patch ISPORT org_data : IN STD_LOGIC_VECTOR7 DOWNTO 0; -原码输入patch_data : OUT STD_LOGIC_VECTOR7 DOWNTO 0;-补码输出END org_patch ;ARCHITECTURE BHV OF org_patch IS BEGINPROCESSorg_dataBEGINIForg_data7='0' THENpatch_data<=org_data; -org_data>=0,补码 =原码;elsepatch_data<=org_data7&not org_data6 DOWNTO 0+1;-org_data<0 ,补码 =|原码 |取反 +1;END IF ;END PROCESS ;END BHV ;欢迎下载精品学习资源310library ieee;use ieee.std_logic_1164.a;ll use ieee.std_logic_unsigned.a;ll entity add isporta:in std_logic_vector7 downto 0;b:in std_logic_vector7 downto 0;ci:in std_logic;co:out std_logic;count:out std_logic_vector7 downto 0;end add;architecture bhv of add is beginprocessa,b,civariable data:std_logic_vector1 downto 0;variable c:std_logic;begin c:=ci;for n in 0 to 7 loop data:='0'&an+'0'&bn+'0'&c ;countn<=data0;c:=data1;end loop;co<=c; end process; end bhv;3-14 用循环语句设计一个7 人投票表决器,及一个4 位 4 输入最大数值检测电路;-解: 5-7 用循环语句设计一个7 人投票表决器,及一个4 位 4 输出最大数值检测电路;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY vote_7 ISPORT DIN: IN STD_LOGIC_VECTOR6 DOWNTO 0;-7 位表决输入 1: 同意, 0:不同意 G_4: OUT STD_LOGIC;- 超过半数指示CNTH: OUT STD_LOGIC_VECTOR2 DOWNTO 0;- 表决结果统计数END vote_7 ;ARCHITECTURE BHV OF vote_7 IS BEGINPROCESSDIN欢迎下载精品学习资源VARIABLE Q: STD_LOGIC_VECTOR2 DOWNTO 0;BEGIN Q:="000" ;FOR n IN 0 TO 6 LOOP - n是 LOOP 的循环变量IFDINn='1' THEN Q:=Q+1; END IF ;END LOOP ;CNTH<=Q ;IF Q>=4 THEN G_4<='1'; ELSE G_4<='0' ; END IF ;END PROCESS ;END BHV ;5-7 用 VHDL设计一个功能类似74LS160 的计数器;-解: 3-10用 VHDL 设计一个功能类似74LS160 异步复位和同步使能加载、计数的十进制加法计数器的计数器;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT10 ISPORTCLK,RST,EN,LOAD : IN STD_LOGIC;DA TA : IN STD_LOGIC_VECTOR3 DOWNTO 0; -4 位预置数DOUT : OUT STD_LOGIC_VECTOR3 DOWNTO 0;-计数值输出COUT : OUT STD_LOGIC;- 计数进位输出END CNT10 ;ARCHITECTURE behav OF CNT10 IS BEGIN PROCESSCLK,RST,EN,LOADVARIABLE Q : STD_LOGIC_VECTOR3 DOWNTO 0;BEGINIF RST='0' THEN Q:=OTHERS =>'0'; - 计数器异步复位ELSIF CLK'EVENT AND CLK='1' THEN-检测时钟上升沿IF EN='1' THEN-检测是否答应计数或加载(同步使能)IF LOAD='0' THEN Q:=DATA ;-答应加载ELSEIF Q<9 THEN Q:=Q+1; -答应计数 ,检测是否小于9 ELSE Q:=OTHERS=>'0'; -大于等于 9 时,计数值清零END IF ;END IF ;END IF ;END IF ;IF Q=9 THEN COUT<='1'; -计数大于 9,输出进位信号欢迎下载精品学习资源ELSE COUT<='0' ;END IF ;DOUT<=Q ;- 将计数值向端口输出END PROCESS ;END behav ;5-8 给出含有异步清零和计数使能的16 位二进制加减可控计数器的VHDL 描述;- 解: 3-11 给出含有异步清零和计数使能的16 位二进制加减可控计数器的VHDL描述;-用 VHDL实现含有异步清零和计数使能的16 位二进制加减可控计数器;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY ADD_SUB_LOAD_16 ISPORT CLK,RST,ADD_EN,SUB_EN,LOAD : IN STD_LOGIC;DATA : IN STD_LOGIC_VECTOR15 DOWNTO 0;CQ : OUT STD_LOGIC_VECTOR15 DOWNTO 0;COUT : OUT STD_LOGIC; END ENTITY ADD_SUB_LOAD_16;ARCHITECTURE A_S_16 OF ADD_SUB_LOAD_16 IS BEGINPROCESSCLK,RST,ADD_EN,SUB_EN,LOADVARIABLE CQI: STD_LOGIC_VECTOR15 DOWNTO 0;-VARIABLE LS_LOAD : STD_LOGIC;BEGIN-LS_LOAD:=LOAD;IF RST = '1' THEN CQI:=OTHERS => '0';- 计数器异步复位ELSIF LOAD = '1' THEN CQI:=DATA;-LS_LOAD:='0' ;- 计数器异步复位ELSIF CLK'EVENT AND CLK='1' THEN-检测时钟上升沿IF ADD_EN='1'THEN-检测是否答应计数同步他能 IF CQI<16#FFFF# THEN CQI:=CQI+1;- 答应计数 ,检测是否小于65535 ELSE CQI:=OTHERS => '0';- 大于 65535,计数值清零END IF ;IF CQI=16#FFFF# THEN COUT<='1';- 计数大于 9,输出进位信号ELSE COUT <= '0' ;END IF ;END IF ;IF SUB_EN='1'THEN-检测是否答应计数 同步他能 IF CQI>0 THEN CQI:=CQI-1;- 答应计数 ,检测是否小于65535 ELSE CQI:=OTHERS => '1';- 大于 65535,计数值清零END IF ;欢迎下载精品学习资源IF CQI=0 THEN COUT<='1';- 计数大于 9,输出进位信号ELSE COUT <= '0' ;END IF ;END IF ;END IF ;CQ<=CQI ;- 将计数值向端口输出END PROCESS ;END ARCHITECTURE A_S_16;5-9library ieee;use ieee.std_logic_1164.a;ll use ieee.std_logic_unsigned.a;ll entity m6 isportclk,rst:in std_logic;q: out std_logic_vector2 downto 0;end m6;architecture bhv of m6 istype states isst0,st1,st2,st3,st4,st5; signal stx:states;begin processclk beginif rst='1' then stx<=st0;q<="000";elsif clk'event and clk='1' then casestx iswhen st0=>q<="000";stx<=st1;when st1=>q<="001";stx<=st2;when st2=>q<="011";stx<=st3;when st3=>q<="111";stx<=st4;when st4=>q<="101";stx<=st5;when st5=>q<="100";stx<=st0;when others=> stx<=st0;end case;end if;end process; end bhv;欢迎下载精品学习资源5-12 用同步时序电路对串行二进制输入进行奇偶校验,每检测5 位输入,输出一个结果;当5 位输入中 1 的数目为奇数时,在最终一位的时刻输出1;- 解: 4-12用同步时序电路对串行二进制输入进行奇偶校验,每检测5 位输入,输出一个结果;-当 5 位输入中 1 的数目为奇数时,在最终一位的时刻输出1;LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY odd_even_p_RXD_5ISPORTCLK,RST,S_in: IN STD_LOGIC;-CLK 、RST、S_in: 时钟、复位、串行输入数据P_out: OUT STD_LOGIC_VECTOR4 DOWNTO 0;-P_out:并行输出数据o_e_out: OUT STD_LOGIC;-o_e_out:奇校验输出位END ENTITY odd_even_p_RXD_5;ARCHITECTURE one OF odd_even_p_RXD_5 IS BEGINPROCESSCLK,RSTVARIABLEshift_Q : STD_LOGIC_VECTOR4 DOWNTO 0;-shift_Q:移位寄存器VARIABLEshift_cnt : STD_LOGIC_VECTOR2 DOWNTO 0;-shift_cnt:移位计数器BEGINIF CLK'EVENT AND CLK='1' THEN-检测时钟上升沿IF RST = '1' THEN shift_cnt:="100";-移位寄存器和计数器复位ELSEIF shift_cnt=4 THEN-检测到接收 5 位串行输入数据shift_cnt:="000"; -移位计数器清零,为接收下一组数据做预备;P_out<=shift_Q; - 接收数据并行输出o_e_out<=shift_Q4XORshift_Q3XORshift_Q2XORshift_Q1XOR shift_Q0;- 奇校验输出shift_Q:=S_in & shift_Q4 DOWNTO 1;- 采样移位串行输入ELSEshift_cnt:=shift_cnt+1;- 移位计数shift_Q:=S_in & shift_Q4 DOWNTO 1;- 采样移位串行输入END IF;END IF; END IF; END PROCESS ;END ARCHITECTURE one ;欢迎下载精品学习资源5-5 分频方法有多种,最简洁的是二分频和偶数分频甚至奇数分频,这用触发器或指定计数模的计数器即可办到;但对于现场实现指定分频比或小数分频率的分频电路的设计就不是很简洁了;试对例 3-20 的设计稍作修改,将其进位输出 COUT 与异步加载把握 LOAD 连在一起,构成一个自动加载型 16 位二进制数计数器,也即一个 16 位可控的分频器,给出其 VHDL 表述,并说明工作原理;设输入频率 fi=4MHz ,输出频率 fo=516.5 ± 1Hz 答应误差± 0.1Hz , 16 位加载数值是多少 .-解: 3-9 16 位数控分频器 可进行奇偶数分频 LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY DVF16 ISPORTCLK : IN STD_LOGIC;D : IN STD_LOGIC_VECTOR15 DOWNTO 0;FOUT : OUT STD_LOGIC;END ENTITY DVF16;ARCHITECTURE one OF DVF16 IS SIGNAL FULL : STD_LOGIC;BEGINP_REG: PROCESSCLKVARIABLE CNT8 : STD_LOGIC_VECTOR15 DOWNTO 0;BEGINIF CLK'EVENT AND CLK = '1' THENIF CNT8 = "0000000000000000" THENCNT8 := D-1 ;-当 CNT8 计数归 0 时,预置 CNT8=D-1 ;- 计数范畴 D=n : n-1n/2 取整 n=10:98765 计数,前后半周期相同 FULL <= '1' ;-同时使溢出标志信号FULL 输出为高电平-n=11:1098765计数,前比后半周期多一个时钟ELSIF CNT8 = '0' & D15 DOWNTO 1 THENCNT8 :='0' & D15 DOWNTO 1-1;-当 CNT8=n/2 取整时,预置 CNT8=D/2 取整 -1;- 计数范畴 D=n :n/2 取整 0n=10:43210 计数 FULL <= '1' ; -同时使溢出标志信号FULL 输出为高电平n=11:43210 计数 ELSE CNT8 := CNT8 - 1; -否就连续作加1 计数FULL <= '0' ;- 且输出溢出标志信号FULL 为低电平END IF ;END IF ;END PROCESS P_REG ;P_DIV: PROCESSFULLVARIABLE CNT2 : STD_LOGIC;BEGINIF FULL'EVENT AND FULL = '1' THENCNT2 := NOT CNT2;-假如溢出标志信号FULL 为高电平, D 触发器输出取反IF CNT2 = '1' THEN FOUT <= '1';ELSE FOUT <= '0' ;欢迎下载精品学习资源END IF ;END IF ;END PROCESS P_DIV ;END ARCHITECTURE one;图 3-20 RTL 图5-6 分别给出图 3-20 所示的六个 RTL 图的 VHDL描述,留意其中的D 触发器和锁存器的表述;图 3-20 RTL 图( a)- 解:实现图 3-20aRTL 图的 VHDL 程序 t3_12_a.vhd LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY t3_12_a ISPORT CL,CLK0: IN STD_LOGIC;OUT1:OUT STD_LOGIC;END ENTITY t3_12_a;ARCHITECTURE sxdl OF t3_12_a IS-时序电路 sxdl SIGNAL Q : STD_LOGIC;BEGIN欢迎下载精品学习资源PROCESSCLK0 BEGINIF CLK0'EVENT AND CLK0='1' THEN-检测时钟上升沿Q <= NOTQ OR CL;END IF ;END PROCESS ;OUT1 <= NOT Q ;END ARCHITECTURE sxdl;图 3-20 RTL 图( b)- 解:实现图 3-20bRTL 图的 VHDL 程序 t3_12_b.vhd LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY t3_12_b ISPORT A,B,C,D: IN STD_LOGIC;Y: OUT STD_LOGIC;END ENTITY t3_12_b;ARCHITECTURE sxdl OF t3_12_b IS-时序电路 sxdl SIGNAL AB,CD,ABCD : STD_LOGIC;BEGIN PROCESSA,B,C,D,AB,CD,ABCD BEGINAB<=A OR B ;CD<=C AND D;ABCD<=AB XOR CD;CASE AB IS- 类似于真值表的 case语句WHEN '0' => Y <= A;WHEN '1' => Y <= ABCD ;WHEN OTHERS =>NULL ;END CASE ;END PROCESS ;END ARCHITECTURE sxdl ;欢迎下载精品学习资源图 3-20 RTL 图( c)- 解 1:实现图 3-20c RTL 图的 VHDL 程序 mux21a.vhd 底层设计描述;-用WHEN_ELSE 实现 2 选 1 多路选择器程序 mux21a.vhd ;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mux21a ISPORTa,b : IN STD_LOGIC;s : IN STD_LOGIC ;y : OUT STD_LOGIC;END ENTITY mux21a;ARCHITECTURE one OF mux21a IS BEGINy<=a WHEN s='0' ELSE b ;END ARCHITECTURE one;- 解 2:实现图 3-20cRTL 图的 VHDL 程序 DFF6.vhd 底层设计描述;-电平触发 D 型触发器程序 DFF6.vhd LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY DFF6 ISPORTCLK: IN STD_LOGIC;D: IN STD_LOGIC;Q:OUT STD_LOGIC;END ;ARCHITECTURE bhv OF DFF6 IS BEGINPROCESSCLK,D BEGINIF CLK='1'THEN Q<=D ;END IF ;END PROCESS ;END bhv ;- 解 3:实现图 3-20cRTL 图的 VHDL 程序 t3_12_c.vhd 顶层设计描述;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY t3_12_c ISPORTD1,D2,CLK : IN STD_LOGIC;Q : OUT STD_LOGIC;END ENTITY t3_12_c;ARCHITECTURE one OF t3_12_c ISCOMPONENT mux21a-调用 2 选 1 多路选择器声明语句PORTa,b : IN STD_LOGIC;s : IN STD_LOGIC;y : OUT STD_LOGIC;欢迎下载精品学习资源END COMPONENT;COMPONENT DFF6-调用电平型 D 触发器声明语句PORTCLK: IN STD_LOGIC;D: IN STD_LOGIC;Q:OUT STD_LOGIC;END COMPONENT;SIGNAL DD: STD_LOGIC; -定义 1 个信号作为内部的连接线;BEGINu1: mux21a PORT MAPCLK,D2,D1,DD;u2: DFF6PORT MAPCLK,DD,Q; END ARCHITECTURE one;图 3-20 RTL 图( d)- 解 1:实现图 3-20dRTL 图的 VHDL 程序 DFF_PRE.vhd 底层设计描述-带预置、清零和输出访能的D 触发器程序 DFF_PRE.vhd ;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY DFF_PRE_CLR_ENA IS PORTCLK : IN STD_LOGIC;D : IN STD_LOGIC ;Q :OUT STD_LOGIC ;ENA : IN STD_LOGIC ;PRE : IN STD_LOGIC ;CLR : IN STD_LOGIC ;END ;ARCHITECTURE bhv OF DFF_PRE_CLR_ENA ISSIGNAL Q1:STD_LOGIC; -类似于在芯片内部定义一个数据的暂存节点BEGINPROCESSCLK,D,Q1,ENA,PRE,CLR BEGINIF CLR='1' THEN Q1<='0';ELSIF PRE='1' THEN Q1<='1';ELSIF CLK'EVENT AND CLK='1' AND ENA='1' THEN Q1<=D;END IF ;-IF EN='1' THEN Q<=Q1; - 将内部的暂存数据向端口输出-END IF ;Q<=Q1 ; - 将内部的暂存数据向端口输出END PROCESS ;END bhv ;欢迎下载精品学习资源- 解 2:实现图 3-20dRTL 图的 VHDL 程序 t3_12_d.vhd 顶层设计描述LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY t3_12_d ISPORTSET,D,CLK,EN,RESET : IN STD_LOGIC;Q : OUT STD_LOGIC;END ENTITY t3_12_d;ARCHITECTURE one OF t3_12_d ISCOMPONENT DFF_PRE_CLR_ENA-调用 D 触发器声明语句PORTCLK : IN STD_LOGIC;D : IN STD_LOGIC; Q :OUT STD_LOGIC;ENA : IN STD_LOGIC;PRE : IN STD_LOGIC;CLR : IN STD_LOGIC;END COMPONENT;SIGNAL SS: STD_LOGIC; - 定义 1 个信号作为内部的连接线;BEGINSS<=SET AND NOT RESET;u1: DFF_PRE_CLR_ENA PORT MAPCLK,D,Q,EN,SS,RESET;END ARCHITECTURE one;图 3-20 RTL 图( e)- 解 1:实现图 3-20eRTL 图的 VHDL 程序 DFF_PRE_CLR.vhd 底层设计描述- 带预置、清零和输出访能的D 触发器程序 DFF_PRE_CLR.vhd LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY DFF_PRE_CLR_ENA IS PORTCLK : IN STD_LOGIC;D : IN STD_LOGIC ;Q :OUT STD_LOGIC ;ENA : IN STD_LOGIC ;PRE : IN STD_LOGIC ;CLR : IN STD_LOGIC ;END ;ARCHITECTURE bhv OF DFF_PRE_CLR_ENA ISSIGNAL Q1:STD_LOGIC; -类似于在芯片内部定义一个数据的暂存节点欢迎下载精品学习资源BEGIN PROCESSCLK,D,Q1,ENA,PRE,CLR BEGINIF CLR='1' THEN Q1<='0';ELSIF PRE='1' THEN Q1<='1';ELSIF CLK'EVENT AND CLK='1' AND ENA='1' THEN Q1<=D;END IF ;-

    注意事项

    本文(2022年EDA技术实用教程课后答案---潘松-黄继业.docx)为本站会员(C****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开