基本的AHDL设计结构.pptVIP

  • 45
  • 0
  • 约2.54千字
  • 约 29页
  • 2020-06-01 发布于湖北
  • 举报
基本的AHDL设计结构 -- Title Statement (optional)-标题语句 -- Include Statement (optional)-包含语句 -- Constant Statement (optional)-常量语句 -- Define Statement (optional)-定义语句 -- Parameters Statement (optional)-参数语句 -- Function Prototype Statement (optional)- 函数原型语句:参数化的函数和非参数化的函数 -- Options Statement (optional)-选择语句 -- Assert Statement (optional)-断言语句 -- Subdesign Section-子设计段 -- Variable Section (optional)-变量段 -- If Generate Statement (optional) -- Node Declaration (optional) -- Instance Declaration (optional) -- Register Declaration (optional) -- State Machine Declaration (optional) -- Machine Alias Declaration (optional) -- Assert Statement (optional) -- Logic Section-逻辑段 -- Defaults Statement (optional) -- Boolean Equation -- Case Statement -- For Generate Statement -- If Generate Statement -- If Then Statement -- In-Line Logic Function Reference (内部函数直接引用) -- Truth Table Statement -- Assert Statement 2. 使用AND、NAND、XOR、XNOR、OR、NOR等布尔运算符的规则如下: 两个操作数为单一结点:(AB) 两个操作数为组:(a,b,c)(d,e,f)=(ad, be, cf) 一个操作数为单一结点,一个操作数为数组: (ab[1..4])=(ab1, ab2, ab3, ab4) 两个操作数为数字:(39)=B”0011”B”1001”=B”0001” 一个操作数为单一结点,一个操作数为数字: (a,b,c)1=(a,b,c) (0,0,1)= (a0,b0,c1) 一个操作数为组,一个操作数为VCC: (a,b,c)VCC=(a,b,c) SUBDESIGN parity_t ( a[3..0] : INPUT ; oa[4..0] : OUTPUT; ) begin oa4=oa3$oa2$oa1$oa0; oa3=a3; oa2=a2; oa1=a1; oa0=a0; end; * * 用AHDL语言描写数字逻辑电路的一个最简单的TDF文件必须包括一个子设计段(Subdesign Section)和一个逻辑段(Logic Section),其他段和语句都是可选的,而非必需项。 各种段和语句如下 例程一:简单逻辑运算(与运算) 输入线2条:A、B 输出线1条:C 布尔方程式:C=AB 图形如下: 说明: 1. AHDL逻辑运算优先级为: NOTANDNANDXORXNORORNOR. 例程二:同位产生器 输入线4条:a[3..0] 输出线5条:oa[4..0] 布尔方程式:oa4=a3⊕a2⊕a1⊕a0; oa[3..0] =a[3..0] 图形如下: 例程三:二对一多任务器 SUBDESIGN multi_2t ( s, d0,d1 : INPUT ; y : OUTPUT; -- Y=/S*D0 + S*D1 ) BEGIN if s then y=d1; else y=d0; end if; END; -- Template:IF THEN STATEMENT 说明: 运算符 与 比较符 优先级表 例程四:一对四解多任务器 SUBDESIGN demulti_4t ( s[1..0],d : INPUT ; y[3..0] : OUTPUT; ) --y0=!s1!s0d; y1=!s1s0d;

文档评论(0)

1亿VIP精品文档

相关文档