《复旦大学《数字逻辑基础》可编程逻辑器件》由会员分享,可在线阅读,更多相关《复旦大学《数字逻辑基础》可编程逻辑器件(14页珍藏版)》请在金锄头文库上搜索。
1、数字逻辑基础,第六章 可编程逻辑器件和数字系统设计初步,本章要求,本章的内容应该结合配套的实验课程进行,主要教学任务在配套的实验课程上完成。 学生在掌握可编程逻辑器件的基本结构后,利用计算机仿真软件进行实验。 学生应该掌握基本的计算机仿真过程。,6.1 可编程逻辑器件,可编程逻辑器件的特点 由设计者自己完成其逻辑功能 系统集成度高 可靠性高 设计过程灵活 可以用软件进行仿真,中小规模器件 PAL,GAL等 大规模器件 基于乘积项结构CPLD 基于查找表结构FPGA,可编程逻辑器件的种类,CPLD的基本结构,可编程“与-或”阵列,可编程的连线区,可编程逻辑宏单元,CPLD的结构示意图,FPGA的
2、基本结构,FPGA内部的逻辑块,查找表是一个存储器,直接将用户需要的输入输出关系存储在内,FPGA的内部结构示意图,逻辑块,可编程连线区,可编程逻辑器件的设计过程,逻辑设计,综合与仿真,下载 ,调试,达到预想目标,N,Y,6.2 数字系统设计初步,数字系统的一般结构,数字系统设计的一般过程 自顶向下(Top-down)的设计方法 系统功能级设计 行为级设计 寄存器传输级设计 硬件设计语言 VHDL Verilog HDL,用VHDL设计的例1,library IEEE; use IEEE.std_logic_1164.all; entity shiftreg isport ( CLK: in
3、STD_LOGIC;D: in STD_LOGIC_VECTOR (7 downto 0);Q: buffer STD_LOGIC_VECTOR (7 downto 0); end shiftreg; architecture shiftreg_arch of shiftreg is beginprocess (CLK)beginif CLK event and CLK = 1 thenQ(0) = D(0);Q(7 downto 1) = Q(6 downto 0);end if;end process; end shiftreg_arch;,8位移位寄存器,左移,用VHDL设计的例2,li
4、brary IEEE; use IEEE.std_logic_1164.all; use IEEE.std_logic_unsigned.all; entity counter isport ( CLK: in STD_LOGIC;Q: out STD_LOGIC_VECTOR (3 downto 0); end counter; architecture counter_arch of counter is signal cnt: STD_LOGIC_VECTOR (3 downto 0); beginQ = cnt;process (CLK)beginif CLK event and CLK = 1 thenif cnt = “1001“ then cnt = “0000“; else cnt = cnt+1;end if;end if;end process; end counter_arch;,10进制加法计数器,