文档详情

硬件描述语言基础.ppt

发布:2017-09-05约1.07万字共43页下载文档
文本预览下载声明
VHDL硬件描述语言基础 简介 基本结构 基本数据类型 设计组合电路 设计时序电路 设计状态机 大规模电路的层次化设计 Function and Procedure 简介--背景 传统数字电路设计方法不适合设计大规模的系统。工程师不容易理解原理图设计的功能。 众多软件公司开发研制了具有自己特色的电路硬件描述语言(Hardware Description Language,HDL),存在着很大的差异,工程师一旦选用某种硬件描述语言作为输入工具,就被束缚在这个硬件设计环境之中。因此,硬件设计工程师需要一种强大的、标准化的硬件描述语言,作为可相互交流的设计环境。 简介--背景 美国国防部在80年代初提出了VHSIC(Very High Speed Integrated Circuit)计划,其目标之一是为下一代集成电路的生产,实现阶段性的工艺极限以及完成10万门级以上的设计,建立一项新的描述方法。1981年提出了一种新的HDL,称之为VHSIC Hardware Description Language,简称为VHDL,这种语言的成就有两个方面: 描述复杂的数字电路系统 成为国际的硬件描述语言标准 VHDL的优点 用于设计复杂的、多层次的设计。支持设计库和设计的重复使用 与硬件独立,一个设计可用于不同的硬件结构,而且设计时不必了解过多的硬件细节。 有丰富的软件支持VHDL的综合和仿真,从而能在设计阶段就能发现设计中的Bug,缩短设计时间,降低成本。 更方便地向ASIC过渡 VHDL有良好的可读性,容易理解。 VHDL与计算机语言的区别 运行的基础 计算机语言是在CPU+RAM构建的平台上运行 VHDL设计的结果是由具体的逻辑、触发器组成的数字电路 执行方式 计算机语言基本上以串行的方式执行 VHDL在总体上是以并行方式工作 验证方式 计算机语言主要关注于变量值的变化 VHDL要实现严格的时序逻辑关系 实体(Entity) 描述此设计功能输入输出端口(Port) 在层次化设计时,Port为模块之间的接口 在芯片级,则代表具体芯片的管脚 实体--端口的模式 输入(Input) 输出(Output) 双向(Inout):可代替所有其他模式,但降低了程序的可读性,一般用于与CPU的数据总线接口 缓冲(Buffer):与Output类似,但允许该管脚名作为一些逻辑的输入信号 Out与Buffer的区别 Entity test1 is port(a: in std_logic; b,c: out std_logic ); end test1; architecture a of test1 is begin b = not(a); c = b;--Error end a; Entity test2 is port(a: in std_logic; b : buffer std_logic; c: out std_logic ); end test2; architecture a of test2 is begin b = not(a); c = b; end a; 结构体(Architecture) 描述实体的行为 结构体有三种描述方式 行为描述(behavioral) 数据流描述(dataflow) 结构化描述(structural) 结构体--行为描述 Architecture behavioral of eqcomp4 is begin comp: process (a,b) begin if a=b then equal = ‘1’; else equal =‘0’; end if; end process comp; end behavioral ; 结构体--数据流描述 描述输入信号经过怎样的变换得到输出信号 Architecture dataflow1 of eqcomp4 is begin equal = ‘1’ when a=b else ‘0’; end dataflow1; Architecture dataflow2 of eqcomp4 is begin equal = not(a(0) xor b(0)) and not(a(1) xor b(1)) and not(a(2
显示全部
相似文档