可编程片上系统开发平台内容摘要:
n)为一个给定的硬件生成和配置不同的 VHDL和 Verilog仿真模型。 MHS文件作为 Simgen的输入, MHS文件描述了硬 件元件的例化和连接。 Simgen也为指定厂商的综合工具生 成脚本。 脚本编译产生的仿真模型。 仿真库 仿真网表使用低层次的 Xilinx FPGA可使用的硬件原 语。 Xilinx为这些原语提供了仿真模型。 下面介绍了 Xilinx 的仿真流程中所使用的库。 HDL代码必须参考相对应的编 译库。 HDL仿真库必须将逻辑库与物理编译的库相对应。 Xilinx的库可以使用 CompXLib工具进行编译。 仿真库 UNISIM库 UNISIM库是功能模型库,用于行为和结构仿真。 该 库包含所有的 Xilinx统一的库元件,这些库元件可以被大 部分的综合工具识别。 UNISIM库也包含了那些通用的例 化元件,比如 I/O和存储器单元。 设计人员在设计中例化 UNISIM库,并且在行为仿真 时进行仿真。 Simgen产生的结构仿真模型例化 UNISIM库 元件。 在 UNISIM库中的所有元件都是 0延迟的。 所有的同步 元件有一个单位的延迟避免竞争条件,对于同步元件的 clocktoout延迟是 100ps。 仿真库 SIMPRIM库 SIMPRIM库用于时序仿真。 它包含所有的 Xilinx实现 工具中使用的 Xilinx的原语库元件。 Simgen产生的时序仿 真模型例化 SIMPRIM库元件。 仿真库 XilinxCoreLib库 Xilinx的核产生器是一个图形化的 IP设计工具用来产 生高层次模块,比如 FIR滤波器, FIFOs, CAMs和其它高 级 IP。 设计人员可以定制和预优化模块来利用 Xilinx FPGA芯片的固有的结构特点,比如,块乘法器, SRL, 快速进位逻辑和片上的单端口或双端口 RAM。 核产生器 HDL库模型用于行为仿真。 设计人员选择合 适的 HDL模型添加到 HDL设计中。 模型不使用用于全局信 号的库元件。 仿真库 EDK库 EDK库用于行为仿真。 该库保存了所有的 EDK IP元 件,这些元件预编译用于 ModelSim SE、 PE或 NcSim。 库 免除了需要为每一个工程重新编译 EDK元件,减少了编译 的时间。 EDK IP元件库只提供 VHDL语言,并且可能加密。 未加密的 EDK IP元件能使用 Xilinx的 CompEDKLib工 具编译。 对于加密的 EDK IP元件提供了预编译库。 仿真模型产生器 仿真模型 功能仿真设计输入设计综合设计网表设计实现设计实 现的网表时序仿真行为仿真结构仿真图 FPGA设计仿 真阶段 该部分介绍行为仿真模型、结构仿真模型和时序仿真 模型。 图 FPGA的设计仿真阶段。 在设计过程的 每个点, Simgen建立一个合适的仿真模型模型。 仿真模型产生器 仿真模型 功能仿真 设计输入 设计综合 设计网表 设计实现 设计实现的网表 时序仿真 行为仿真 结构仿真 图 FPGA设计仿真阶段 仿真模型产生器 行为模型 图。 Simgen要求 MHS文件作为 输入。 Simgen建立一系列的仿真模型。 可选的, Simgen为 指定厂商的仿真器产生编译脚本。 如果指定, Simgen能用 数据产生 HDL文件去初始化与存在设计中的 BRAM相关 联。 这个数据从存在在可执行和连接格式( ELF)文件中 得到。 仿真模型产生器 行为模型 MHS ELF Simgen HDL Script 图 仿真模型产生器 结构模型 图 , Simgen要求 MHS文件和相关的综合网表 文件作为输入。 从这些网表文件中建立一系列的 HDL文 件结构建模设计功能。 Simgen可以为指定厂商的仿真器 产生一个编译脚本。 如果指定, Simgen能用数据产生 HDL文件去初始化与存在设计中的 BRAM相关联。 这个 数据从存在在可执行和连接格式( ELF)文件中得到。 仿真模型产生器 结构模型 MHS ELF Simgen HDL Script 图 结构仿真模型产生 MHS NGC 仿真模型产生器 时序模型 图 , Simgen要求 MHS文件和相关的实现网表 文件作为输入。 从这些网表文件中建立一个的 HDL文件对 设计建模和包含合适的时序信息的 SDF文件。 Simgen可以 为指定厂商的仿真器产生一个编译脚本。 如果指定, Simgen能用数据产生 HDL文件去初始化与存在设计中的 BRAM相关联。 这个数据从存在在可执行和连接格式 ( ELF)文件中得到。 仿真模型产生器 时序模型 MHS ELF Simgen HDL Script 图 结构仿真模型产生 MHS NGD 仿真模型产生器 输出文件 Simgen在输出目录的仿真目录下产生所有的仿真文件 和每个仿真模型的子目录。 Output_directory/simulation/sim_model 当 Simgen成功执行后,仿真目录下包含下面的文件: ( 1) peripheral_wapper.[vhd|v]:每个元件的模块化仿真文件。 对 时序仿真不适用; ( 2) system_name.[vhd|v]:设计的顶层 HDL ( 3) :标准延迟格式 sdf,包含合适的快和网络 延迟,这些信息来自布局布线过程,只用于时序仿真; ( 4) system_name.[do|sh]:用于编译 HDL文件和编译仿真模型 的脚本文件。 仿真模型产生器 输出文件 ( 5) test_harness_setup.[do|sh]:建立仿真器的助手脚本,并且 指定了在波形窗口或者列表窗口显示的信号。 ( 6) test_harness_wave.[do|sv]: koam;建立仿真波形显示助手 脚本; ( 7) :建立仿真列表显示助手脚本; ( 8) instance_wave.[do|sv]:为指定实例建立仿真波形显示的助 手脚本; ( 9) :为指定实例建立列表显示的助手脚本; 仿真模型产生器 存储器初始化 如果设计中包含存储器时,使用数据初始化相 应的仿真模型。 使用 pe选项,可以指定与给定处 理器实例的 ELF文件。 通过选择合适的 GNU编译 器,产生被编译的可执行文件。 库产生器 库产生器( Library Generator, Libgen)通常是第一 个工具用于配置库和设备驱动。 Libgen使用设计人员建 立的 MSS文件。 MSS文件定义了与外设,标准 I/O设备, 中断句柄例程和其它软件特性相关的驱动。 Libgen使用 这些信息配置库和驱动。 运行 libgen [options] filename命 令来运行库产生器。 库产生器 —加载路径 lplibrary_path library_name boards drivers pcores sw_services bsp 图 外设,驱动,库, OS的目录结构 库产生器 —加载路径 Library Name drivers sw_services bsp pcores my driver my library my os my driver src data .c files .h files MDD Tcl src data .c files .h files MLD Tcl src data .c files .h files MLD Tcl src data .c files .h files MDD Tcl 图 驱动 OS和库的目录结构 库产生器 —输出文件 Libgen在设计工程目录下产生目录和输出文件。 对于 MSS文件的每个处理器实例, Libgen产生和处理器实例名 字相对应的目录。 在每一个处理器实例目录下, Libgen产 生下面的目录和文件: include目录、 lib目录、 libsrc目 录、 code目录。 库产生器 —输出文件 include目录 Include目录包含驱动程序必须的 C头文件。 Libgen在这 个目录下创建。 该文件定义了系统中外 设的基地址, define是驱动, OS,库和用户程序以及函 数原型所需要的。 微处理器驱动定义文件 ( Microprocessor Driver Definition,MDD)为每一个驱动指 定了定义,这些定义用于需要驱动的外设。 lib目录 lib目录包含 ,。 Libxil库包含特 定处理器能够访问的驱动函数。 库产生器 —输出文件 libsrc目录 Libsrc目录包含中间文件和 MAKE文件,这些文件是 用来编译 OS,库和驱动。 该目录包含外设指定的驱动文 件,用于 OS的 BSP文件和库文件。 这些文件从 EDK和设计 的驱动, OS和库目录中复制。 code目录 该目录包含 EDK可执行文件。 Libgen在该目录中创建 (该文件用于 MicroBlaze的板上调试)。 库产生器 —生成库和驱动 基本观点 MHS和 MSS文件定义了系统。 对于系统中的每个处理 器, Libgen找到可寻址的外设清单。 对于每一个处理器, 建立一个唯一的驱动和库的清单。 Libgen为每个处理器完 成下面的过程: 库产生器 —生成库和驱动 基本观点 ( 1)建立在输出文件部分所定义的目录结构 ( 2)为驱动, OS和库拷贝必要的源文件到处理器实例指定的区 域: OUTPUT_DIR/ processor_instance_name/libsrc. ( 3)为处理器可见的每一个驱动、 OS和库调用设计规则检查 DRC程序(作为可选项在 MDD/MLD文件中定义)。 ( 4)为处理器可见的每一个驱动、 OS和库调用 generate Tcl程 序。 为每一个在 include目录下的驱动, OS和库产生必要的 配置文件。 ( 5)为处理器可见的每一个驱动、 OS和库调用 post_generate Tcl程序(如果在和 MDD和 MLD相关的 Tcl文件中定义) 库产生器 —生成库和驱动 基本观点 ( 6)为处理器指定的 OS,驱动和库运行 make。 在 UNIX平 台下,使用 gmake工具。 在 Windows环境下, make用于编 译。 ( 7)为处理器指定的 OS,驱动和库调用 execs_generate Tcl 程序(如果在和 MDD和 MLD相关的 Tcl文件中定义)。 库产生器 —生成库和驱动 MDD/MLD和 Tcl 一个驱动或库需要两个数据文件关联: 1)数据定义文件( MDD或 MLD文件):这个文件定义了用 于驱动、 OS和库的可配置参数; 2)数据产生文件( Tcl):这个文件使用了在 MSS文件中配置 的参数(这些参数用于驱动、 OS或库)来产生数据。 产 生的数据包括但不局限于产生头文件, C文件,运行 DRC,这些文件用于驱动、 OS或库和产生可执行文件。 库产生器 —生成库和驱动 MDD/MLD和 Tcl Tcl文件包括 Libgen在执行不同级别时所调用的程序。 在 Tcl中不同的程序包括: 1) DRC 在 MDD/MLD中给出了 DRC的名字 2) generate。可编程片上系统开发平台
本资源仅提供20页预览,下载后可查看全文
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。
相关推荐
可视化的软件架构设计
d : I n t e g e r ) : B o o l e a n K E Y _ I D : S t r i n g = i d F i l e S p e c I m a g e : I m a g e T i t l e L a b e l : L a b e l A u t h o r L a b l e : L a b e l P u b l i s h e r N a m e L
台中市立鹿寮国民中学营养教育
子宮癌、攝護腺癌、大腸癌、膽囊癌等都在肥胖者身上較常見。 肥胖的原因 一 .遺傳因子 ﹕ 父母一方肥胖者 其子女肥胖的或然率是 40%,父母雙方都肥胖者,其子女肥胖的或然率是 50~70%, 但是就整體來看,後天環境 因素的影響大於遺傳因子。 二 .飲食不當 ﹕ ,看到美食即使 不餓也會吃。 ,常會利用飲食來發洩及舒解壓力。 ,或每天用餐數目不固定 (例如有時一天只吃兩餐或一餐 )。 三