FPGA(二)VHDL之Design Entity和testBench写法


一、Design Entity写法

1.结构组成

在这里插入图片描述
例如:求两个输入1bit的信号的同或结果
在这里插入图片描述

2.entity

  1. 最简单的结构:
entity YourEntityName is
end YourEntityName;
  1. 中间可以加入port端口内容
    Port ( a : in  STD_LOGIC;
           b : in  STD_LOGIC;
           c : out  STD_LOGIC);

port(...);:port中多个端口的描述间用;分隔。
描述分为名字 : 流向类型 : 器件类型

流向类型 作用
in 输入
out 输出
inout 双向
buffer 存储

器件类型一般就是std_logic

3.architecture

architecture YourBehavioralName of YourEntityName is
-- 这里声明一些变量
begin
-- 这里声明一些行为
end YourBehavioralName;
-- 最后也可以不用写YourBehavioralName,即end;

行为可以直接写,也可以写个process

  • 直接写
architecture YourBehavioralName of YourEntityName is
begin
	-- 就像这样直接处理就行
    c <= a xnor b;
end YourBehavioralName;
  • 写个process
architecture YourBehavioralName of YourEntityName is
begin

	-- 就像写c函数一样,括号里面的内容是输入in类型的端口(所以不写c,写c就报错)
	YourProcessName:process(a,b)
	begin
		c <= a xnor b;
	-- 注意是end process XXX
	end process YourProcessName;		  

end YourBehavioralName;

process的名字可以没有

	process(a,b)
	begin
		c <= a xnor b;
	end process;

process的参数没有时可以不用写括号

process
begin
end process;

二、testBench写法

testBench其实和Design Entity是同样的结构组成。

例子:

-- 包
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;

-- 一般testBench不用写端口port
ENTITY testBench IS
END testBench;


ARCHITECTURE behavior OF testBench IS 
    -- component:就是将Design Entity中的port内容写一遍
    COMPONENT YourComponentName
    PORT();
    END COMPONENT;
   
   -- 信号signal
   signal YourSignalName : YourSignalType;
   
BEGIN
 
   -- Unit Under Test (UUT):将Component的端口Port映射到信号signal上
   uut: YourComponentName PORT MAP (
   			YourPortName => YourSignalName
        );
   
   -- Stimulus process
   stim_proc: process
   begin
   end process;

END;

例子:
在这里插入图片描述

  • signal信号
信号类型 定义
std_logic 普通的信号
std_logic_vector(1 downto 0) 信号向量(数组)
1 downto 0表示数组下标从0到1(包括),有两个元素
  • uut
    多个映射描述之间用,分隔
    将Component的端口Port映射到信号signal上,用=>

    扫描二维码关注公众号,回复: 10783970 查看本文章
  • 仿真过程process
    wait for 100ns:表示信号持续100ns
    ab <= "00";信号向量数组ab的赋值

发布了486 篇原创文章 · 获赞 204 · 访问量 13万+

猜你喜欢

转载自blog.csdn.net/sandalphon4869/article/details/105305785
今日推荐