FPGA嵌入式系统开发:VHDL代码与SysGen工具集成及实时验证
1. VHDL代码与SysGen工具的接口
Xilinx SysGen工具允许在其环境中接口和调用VHDL代码。通过创建VHDL黑盒(Black Box),可以将HDL模型集成到系统生成器中。黑盒的主要要求和约定如下:
- 实体名称不能与系统生成器保留的任何实体名称冲突。
- 支持双向端口,但在系统生成器中不会作为端口显示,仅在网表后的生成HDL中出现。
1.1 示例:实现直线方程y = mx + c
首先完成VHDL代码部分,以下是实现该方程的VHDL代码:
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity HDL_Sys_Gen is
Port (m,c : in std_logic_vector(2 downto 0):="000";
y : out std_logic_vector(6 downto 0):="0000000";
m_clk : in std_logic:=’0’);
end HDL_Sys_Gen;
architecture Exa of HDL_Sys_Gen is
begin
process(m,c,m_clk)
variable x: std_logic_vector(3 downto 0):="0000";
begin
if rising_edge(m_clk) then
x:=x+1;
y <=