1 / 205

片上可编程系统描述规范

片上可编程系统描述规范. 何宾 2012.02. 本章内容. 本章主要介绍 SOPC 描述规范。其中包括 : (1) 黑盒定义文件 ; (2) 微处理驱动定义文件 ; (3) 微处理器硬件规范文件 ; (4) 微处理器外设定义文件 ; (5) 微处理器软件规范文件 ; (6) 微处理器库定义文件 ; (7) 外设分析命令文件 ; (8) Xilinx 板描述文件等内容 ;. SOPC 描述文件规范.

clare
Download Presentation

片上可编程系统描述规范

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 片上可编程系统描述规范 何宾 2012.02

  2. 本章内容 本章主要介绍SOPC描述规范。其中包括: (1)黑盒定义文件; (2) 微处理驱动定义文件; (3) 微处理器硬件规范文件; (4) 微处理器外设定义文件; (5) 微处理器软件规范文件; (6) 微处理器库定义文件; (7) 外设分析命令文件; (8) Xilinx板描述文件等内容;

  3. SOPC描述文件规范 EDK工具运行在数据流驱动行为模式。EDK工具存在 不同的数据文件来捕获数据,比如不同的IP,驱动和软件 库。文件也用来捕获设计系统的软件和硬件信息。这些是 ASCII文件。 这些数据格式被称为平台规范格式(Platform Specification Format,PSF)。 下面简要说明这些文件及其功能.

  4. SOPC描述规范 1)黑盒定义(Blace Box Defination,BBD)文件管理被优化的硬 件网表的文件位置,这些文件用于设计者所设计外设的黑盒部分。 2)微处理器驱动定义(Microprocessor Driver Defination,MDD) 文件包含定制软件驱动的指令。 3)微处理器硬件规范(Microprocessor Hardware Specification, MHS)文件定义了硬件元件。提供的MHS文件作为Platgen工具的输 入。 4)微处理器外设定义(Microprocessor Peripheral Defination, MPD)文件定义了外设的接口

  5. SOPC描述规范 5)微处理器软件规范(Microprocessor Software Spectification, MSS)文件作为输入到Libgen的输入。MSS文件包含了定制库,驱 动和文件系统的指令 6)微处理器库定义(Microprocessor Library Defination)文件包 含了指定软件库和操作系统得指令 7)外设分析命令(Peripheral Analyze Order,PAO)文件包含了 HDL的列表文件,这些文件需要用于综合和为编译定义分析指令 8)Xilinx板描述(Xilinx Board Description,XBD)文件包含了 出现在板上的逻辑接口的定义和连接到FPGA的方式。

  6. 微处理器硬件规范微处理器硬件规范(MHS)的语法规范微处理器硬件规范微处理器硬件规范(MHS)的语法规范 (1) MHS文件语法对大小写敏感。 (2) MHS的参数,元件,实例和信号名字必须是HDL语言。必 须遵守HDL语言的语法规范。 (3) MHS文件的注释部分以#开头。 (4) MHS的元件以BEGIN peripheral_name开头,以END结束。 (5) 使用command name=value分配命令。这里有三种分配命令: BUS_INTERFACE,PARAMETER,PORT。

  7. 微处理器硬件规范总线接口 总线接口是有关联的互联信号的群。总线接口有下 面几种: (1) SDCR:从DCR接口; (2) SLMB:从LMB接口; (3) MPLB:主PLB接口; (4) MSPLB:主从PLB接口; (5) SPLB:从PLB接口; (6) S_AXI:从AXI接口; (7) M_AXI:主AXI接口; (8) 使用POSITION关键字来设置总线接口在总线上的位置。例 如使用它定义主设备请求的优先级,或者DCR从设备级别。 BUS_INTERFACE PLB=plb_bus_inst,POSITION=N

  8. 微处理器硬件规范 3. 全局参数 全局参数在BEGIN-END块外定义。比如:版 本参数是全局参数。 4. 本地参数 本地参数在BEGIN-END块内定义,比如: HW_VER,INSTANCE参数。

  9. 微处理器硬件规范 5. 全局端口 全局端口在BEGIN-END块外,可以有下面的关键 字: (1) BUFFER_TYPE:缓冲区类型 PORT CLK=“”, DIR=I, BUFFER_TYPE=IBUF (2) CLK_FREQ:时钟频率 PORT sys_clk = sys_clk, DIR=IN, SIGIS=CLK, CLK_FREQ=100000000

  10. 微处理器硬件规范 (3) DIFFERENTIAL_POLARITY:差分属性 PORT DATA_p=DATA, DIR=I, DIFFERENTIAL_POLARITY=p PORT DATA_n=DATA, DIR=I, DIFFERENTIAL_POLARITY=n (4) DIR:方向 (5) RST_POLARITY:复位极性 PORT sys_rst = sys_rst, DIR=IN, SIGIS=RST, RST_POLARITY=1

  11. 微处理器硬件规范 (6) SENSITIVITY:敏感性(中断) PORT intr1 = intr_1, DIR=IN, SENSITIVITY=EDGE_RISING, SIGIS=INTERRUPT (7) SIGIS:信号类 PORT mysig=” “,DIR=O,SIGIS=value,value可以是CLK, INTERRUPT,RST。 (8) VEC:信号的宽度 PORT const2 = 0xC, DIR=OUTPUT, VEC=[0:3]

  12. 微处理器硬件规范 6. 本地端口 本地端口在BEGIN-END块内,没有关键字。 1)定义存储器的大小(必须是2**N) PARAMETER C_HIGHADDR=0xFFFF00FF PARAMETER C_BASEADDR=0xFFFF0000 2)电源信号(net_gnd/net_vcc) PORT mysignal=Power_signal,Power_signal或者是net_vcc或 net_gnd 3)无连接的端口 无连接的输出端口分配为开(open),无连接的输入端口设 置为GND或VCC。

  13. 微处理器硬件规范 4)常数的分配 PORT mysignal=0b1010_0101 5)并置 PORT A=A,DIR=INPUT PORT B=B,DIR=INPUT,VEC[1:0] PORT C=C,DIR=INPUT PORT D=D,DIR=INPUT,VEC[0:3] PORT Y=A & B & C & D,DIR=OUTPUT,VEC[0:7] 默认情况,所有在BEGIN-END块内定义的是内部信号。外部信 号通过顶层模块的端口声明可用。在BEGIN-END模块外使用PORT 命令来声明外部信号。

  14. 微处理器硬件规范 对于内部的中断,每个可中断的,外设实例定义本地 中断信号. 对于外部的中断,在BEGIN-END模块外部使用PORT 命令来声明外部信号和定义中断的敏感性。 例如: PORT my_int1=my_int1,LEVEL=HIGH,DIR=I

  15. 微处理器硬件规范 下面给出一个MHS文件的例子,请按照前面所介绍的内容,对 该MHS文件进行分析和讨论。 • # Parameters • PARAMETER VERSION = 2.1.0 • # Global Ports • # Assign power signals • PORT vcc_out = net_vcc, DIR=OUTPUT • PORT gnd_out = net_gnd, DIR=OUT • PORT gnd_out6 = net_gnd, DIR=OUTPUT, VEC=[0:5] • PORT intr1 = intr_1, DIR=IN, SENSITIVITY=EDGE_RISING, SIGIS=INTERRUPT • PORT intr2 = intr2, DIR=INPUT, SENSITIVITY=LEVEL_HIGH, SIGIS=INTERRUPT • # Assign constant signals • PORT const1 = 0b1010, DIR=OUTPUT, VEC=[0:3] • PORT const2 = 0xC, DIR=OUTPUT, VEC=[0:3] • PORT sys_rst = sys_rst, DIR=IN • PORT sys_clk = sys_clk, DIR=IN, SIGIS=CLK, CLK_FREQ=100000000 • PORT gpio_io = gpio_io, DIR=INOUT, VEC=[0:31] • # Sub Components

  16. 微处理器硬件规范 • ###################################################################### • BEGIN lmb_v10 • PARAMETER INSTANCE = ilmb_v10 • PARAMETER HW_VER = 1.00.a • PORT LMB_Clk = sys_clk • PORT SYS_Rst = sys_rst • END • ###################################################################### • BEGIN lmb_v10 • PARAMETER INSTANCE = dlmb_v10 • PARAMETER HW_VER = 1.00.a • PORT LMB_Clk = sys_clk • PORT SYS_Rst = sys_rst • END

  17. 微处理器硬件规范 • ###################################################################### • BEGIN opb_v20 • PARAMETER INSTANCE = myopb_bus • PARAMETER HW_VER = 1.10.c • PARAMETER C_PROC_INTRFCE = 0 • PORT OPB_Clk = sys_clk • PORT SYS_Rst = sys_rst • END • BEGIN opb_gpio • PARAMETER INSTANCE = mygpio • PARAMETER HW_VER = 1.00.a • PARAMETER C_GPIO_WIDTH = 32 • PARAMETER C_BASEADDR = 0xffff0100 • PARAMETER C_HIGHADDR = 0xffff01ff • PORT GPIO_IO = gpio_io • BUS_INTERFACE SOPB = myopb_bus • END

  18. 微处理器硬件规范 • ###################################################################### • BEGIN bram_block • PARAMETER INSTANCE = bram1 • PARAMETER HW_VER = 1.00.a • BUS_INTERFACE PORTA = ilmb1_porta • BUS_INTERFACE PORTB = dlmb1_portb • END • ###################################################################### • BEGIN lmb_bram_if_cntlr • PARAMETER INSTANCE = my_ilmb_cntlr1 • PARAMETER HW_VER = 1.00.b • PARAMETER C_BASEADDR = 0x00000000 • PARAMETER C_HIGHADDR = 0x00000fff • BUS_INTERFACE SLMB = ilmb_v10 • BUS_INTERFACE BRAM_PORT = ilmb1_porta • END • ######################################################################

  19. 微处理器硬件规范 • BEGIN lmb_bram_if_cntlr • PARAMETER INSTANCE = my_dlmb_cntlr1 • PARAMETER HW_VER = 1.00.b • PARAMETER C_BASEADDR = 0x00000000 • PARAMETER C_HIGHADDR = 0x00000fff • BUS_INTERFACE SLMB = dlmb_v10 • BUS_INTERFACE BRAM_PORT = dlmb1_portb • END • ###################################################################### • BEGIN microblaze • PARAMETER INSTANCE = mblaze • PARAMETER HW_VER = 4.00.a • BUS_INTERFACE DLMB = dlmb_v10 • BUS_INTERFACE ILMB = ilmb_v10 • BUS_INTERFACE DOPB = myopb_bus • PORT Interrupt = mblaze_intr • END

  20. AXI系统的MHS规范 理论上AXI主设备和AXI从设备可以直接连接,但 是XPS软件工具要求在它们之间例化一个AXI互联模 块。图给出了一个AXI互联的结构。

  21. 图6.1 AXI互联结构 AXI系统的MHS规范

  22. AXI系统的MHS规范 下面给出这个互联系统的MHS文件: BEGIN microblaze PARAMETER INSTANCE = mb_0 PARAMETER HW_VER = 8.00.a PARAMETER C_INTERCONNECT = 2 PARAMETER C_INTERCONNECT_M_AXI_DP_AW_REGISTER = 1 BUS_INTERFACE M_AXI_DP = axi_0 PORT MB_RESET = mb_reset END BEGIN microblaze PARAMETER INSTANCE = mb_1 PARAMETER HW_VER = 8.00.a PARAMETER C_INTERCONNECT = 2 PARAMETER C_INTERCONNECT_M_AXI_DC_AW_REGISTER = 1 PARAMETER C_INTERCONNECT_M_AXI_IC_AW_REGISTER = 1 BUS_INTERFACE M_AXI_DP = axi_0 BUS_INTERFACE M_AXI_DC = axi_1 BUS_INTERFACE M_AXI_IC = axi_1 PORT CLK = sys_clk_s PORT MB_RESET = mb_reset END

  23. AXI系统的MHS规范 BEGIN axi_interconnect PARAMETER INSTANCE = axi_0 PARAMETER HW_VER = 1.00.a PARAMETER C_INTERCONNECT_DATA_WIDTH = 256 PORT INTERCONNECT_ACLK = sys_clk_s PORT INTERCONNECT_ARESETN = sys_bus_reset_n END BEGIN axi_interconnect PARAMETER INSTANCE = axi_1 PARAMETER HW_VER = 1.00.a PORT INTERCONNECT_ACLK = sys_clk_s PORT INTERCONNECT_ARESETN = sys_bus_reset_n END BEGIN axi_gpio PARAMETER INSTANCE = axi_gpio_0 PARAMETER HW_VER = 1.00.a PARAMETER C_INTERCONNECT_S_AXI_MASTERS = mb_0.M_AXI_DP & mb_1.M_AXI_DP PARAMETER C_BASEADDR = 0x81440000 PARAMETER C_HIGHADDR = 0x8144ffff BUS_INTERFACE S_AXI = axi_0 PORT GPIO_IO_O = fpga_0_LEDs_Positions_GPIO_IO_pin PORT S_AXI_ACLK = sys_clk_s END

  24. AXI系统的MHS规范 BEGIN axi_v6_ddrx PARAMETER INSTANCE = axi_v6_ddrx_0 PARAMETER HW_VER = 1.00.a PARAMETER C_INTERCONNECT_S_AXI_MASTERS = mb_1.M_AXI_DC & mb_1.M_AXI_IC PARAMETER C_BASEADDR = 0x40000000 PARAMETER C_HIGHADDR = 0x5fffffff BUS_INTERFACE S_AXI = axi_1 PORT clk = sys_clk_s END

  25. AXI系统的MHS规范 BEGIN axi_emc PARAMETER INSTANCE = axi_emc_0 PARAMETER HW_VER = 1.00.a PARAMETER C_INTERCONNECT_S_AXI_MASTERS = mb_1.M_AXI_DC PARAMETER C_S_AXI_MEM0_BASEADDR = 0x60000000 PARAMETER C_S_AXI_MEM0_HIGHADDR = 0x61ffffff BUS_INTERFACE S_AXI = axi_0 PORT S_AXI_ACLK = sys_clk_s END BEGIN chipscope_axi_monitor PARAMETER INSTANCE = monitor_1 PARAMETER HW_VER = 1.00.a BUS_INTERFACE MON_AXI = mb_1.M_AXI_IC END

  26. AXI系统的MHS规范 AXI互联系统的MHS和PLB系统的MHS文件类似。 但是有主要的三个区别: 1.MASTER参数 AXI互联IP是一个交叉开关,这就是说,不是所有的主设备 连接到所有的从设备。因此就需要有一种机制,能区分出主设 备能访问哪些连接到交叉开关的从设备。通过使用参数 C_INTERCONNECT_<BusIf>_MASTERS 来标识。例如上面的MHS文件中axi_gpio_0 IP的参数: C_INTERCONNECT_S_AXI_MASTERS 表示mb_0 和mb_1的M_AXI_DP接口能访问它。’&’符号分别 列出了主接口。

  27. AXI系统的MHS规范 2.INTERCONNECT参数 注意在MHS文件中Microblaze处理的两个例化mb_0和mb_1中 的一些参数,并不出现在Microblaze核的MPD文件中。这些参数 以C_INTERCONNECT_<Busif>前缀开头。例如: PARAMETER C_INTERCONNECT_M_AXI_DC_AW_REGISTER = 1 回忆前面所介绍的本地参数部分,提到了没有出现在MPD的 参数也不能出现在MHS文件中(除了INSTANCE和HW_VER参 数)。但是,AXI系统是个例外,这是由于一些互联相关的设置 被端点(主和从设备)IP接口捕获作为INTERCONNECT参数。这 些参数并不出现在端点设备IP的MPD文件中。然而,在MHS文件 中是允许的,就如同它们出现在IP的MPD文件中。在MPD部分会 详细说明这些参数。

  28. AXI系统的MHS规范 3.时钟连接 AXI系统和PLB系统的不同在于,时钟端口必须明确的连接 到设计中所有的IP(除了监视点和AXI-AXI连接器,工具自动的 时钟连接)。 不象PLB系统,监视核监视整个的总线,AXI监视核只监视 单个的接口。 BEGIN chipscope_axi_monitor PARAMETER INSTANCE = monitor_1 PARAMETER HW_VER = 1.00.a BUS_INTERFACE MON_AXI = mb_1.M_AXI_IC END

  29. 图6.2一种AXI-AXI的结构 AXI系统的MHS规范 当需要级连AXI互联时,就需要使用AXI-AXI互联 器,图6.2给出了一种AXI-AXI的结构。

  30. AXI系统的MHS规范 BEGIN axi2axi_connector PARAMETER INSTANCE = axi2axi_0 PARAMETER HW_VER = 1.00.a PARAMETER C_INTERCONNECT_S_AXI_MASTERS = mb_0.M_AXI_DP PARAMETER C_S_AXI_BASEADDR = 0x81440000 PARAMETER C_S_AXI_HIGHADDR = 0x8144ffff BUS_INTERFACE S_AXI = axi_0 BUS_INTERFACE M_AXI = axi_1 END

  31. AXI系统的MHS规范 BEGIN axi_gpio PARAMETER INSTANCE = axi_gpio_1 PARAMETER HW_VER = 1.00.a PARAMETER C_INTERCONNECT_S_AXI_MASTERS = axi2axi_0.M_AXI PARAMETER C_BASEADDR = 0x81440000 PARAMETER C_HIGHADDR = 0x8144ffff BUS_INTERFACE S_AXI = axi_1 PORT S_AXI_ACLK = sys_clk_s END AXI-AXI连接核通过参数 C_INTERCONNECT_S_AXI_MASTERS,标识了能访问它的主设 备。同时也给出了它所包含的所有从设备的地址范围。

  32. 微处理器外设规范 微处理器外设规范MPD文件定义了外设接口。一个 MPD文件具有下面的特点: 1) 列出总线接口端口和默认连接; 2) 列出参数和默认值; 3) 任何与MHS分配相同的参数都被覆盖;

  33. 微处理器外设规范 --MPD语法 微处理器外设规范(MPD)的语法规范主要包含: (1)MPD文件对大小写敏感; (2)MPD的参数或者信号名字必须和HDL语言兼容; (3)MPD由IP的供应商提供,并且提供外设的信息。 (4)MPD文件的注释部分以#开头; (5)MPD的元件以BEGIN peripheral_name开头,以END结束; (6)使用command name=value分配命令。

  34. 微处理器外设规范 --MPD语法 MPD中的分配命令包含: (1)BUS_INTERFACE (2)IO_INTERFACE (3)OPTION (4)PARAMETER (5)PORT

  35. 微处理器外设规范 --总线接口 总线接口关键字的关键字包含: (1)BUS:总线 BUS_INTERFACE BUS=bus_label, BUS_STD=bus_std, BUS_TYPE=bus_type (2)BUS_STD:总线标准 取值有:DCR,LMB,PLB ,FSL,AXI (3)BUS_TYPE:总线类型 对于中心连接的总线,其有效值为MASTER,SLAVE, MONITOR; 对于点对点的总线连接,有效地值为INITIATOR, TARGET;

  36. 微处理器外设规范 --总线接口 (4)EXCLUDE_BUSIF:总线连接 定义了所有的BUS_INTERFACE连接(当其它 BUS_INTERFACE连接出现时)。例如,如果一个IP定义了两个接 口:主/从或从接口,只有一个接口能用来连接IP。 BUS_INTERFACE BUS=MSPLB, BUS_STD=PLB, BUS_TYPE=MASTER_SLAVE, EXCLUDE_BUSIF=SPLB BUS_INTERFACE BUS=SPLB, BUS_STD=PLB, BUS_TYPE=SLAVE, EXCLUDE_BUSIF=MSPLB

  37. 微处理器外设规范 --总线接口 (5)GENERATE_BURSTS 指定非桥的主设备产生的burst。只能用于 BUS_TYPE=MASTER的BUS_INTERFACE。 BUS_INTERFACE BUS = MPLB, BUS_STD = PLBV46, BUS_TYPE = MASTER, GENERATE_BURSTS = [FALSE|TRUE]

  38. 微处理器外设规范 --总线接口 (6)ISVALID:有效性 定义了BUS_INTERFACE对于表达式的有效性。如果为 真,BUS_INTERFACE包含在列表中,否则不包括。 BUS_INTERFACE BUS = SPLB0, BUS_STD = PLBV46, BUS_TYPE = SLAVE, ISVALID= (C_NUM_PORTS > 0 && C_PIM0_BASETYPE == 2)

  39. 微处理器外设规范 --总线接口 (7)SHARES_ADDR:共享总线 定义了所有的BUS_INTERFACE地址空间区域, 这些区域需要检查空间不能冲突。 BUS_INTERFACE BUS=DOPB, BUS_STD=OPB, BUS_TYPE=MASTER, SHARES_ADDR=DLMB BUS_INTERFACE BUS=IOPB, BUS_STD=OPB, BUS_TYPE=MASTER, SHARES_ADDR=ILMB BUS_INTERFACE BUS=DLMB, BUS_STD=LMB, BUS_TYPE=MASTER, SHARES_ADDR=DOPB BUS_INTERFACE BUS=ILMB, BUS_STD=LMB, BUS_TYPE=MASTER, SHARES_ADDR=IOPB

  40. 微处理器外设规范 --IO接口 IO_INTERFACE定义了IP和一些外部片外的外设的接 口。 每个IO接口相关是那些端口的集合,这些端口在BSB 中定义为系统的顶层端口和BSB所表示的外部设备的参数 集。 在MPD文件中,可以通过分配一个唯一的IO_IF名字 和IO类型来定义IO_INTERFACE,通过添加IO_IS标记到 端口和参数,就可以定义和IO_INTERFACE相关的端口和 参数。

  41. 微处理器外设规范 --IO接口 IO_IF和IO_TYPE为IO接口的关键字。 1)IO_IF为唯一的用户定义的标号。所有在MPD文件中声明的 端口和参数,通过使用相同的IO_IF的值与IO_INTERFACE 相关联。 2)IO_TYPE指明了IO的类型。 可用的IO_TYPE有: XIL_DDR_V1, XIL_EMC_V1, XIL_Ethernet_V1, XIL_GPIO_V1, XIL_IIC_V1, XIL_PCI_ARBITER_V1, XIL_PCI32_V1, XIL_ SDRAM _V1, XIL_SPI_V1, XIL_SYSACE_V1, XIL_UART_V1

  42. 微处理器外设规范-选项 选项OPTION定义了工具的指令。选项的关键字有: 1)ALERT IP核的警告消息,例如:OPTION ALART=”This belongs to Xilinx” 2)ARCH_ SUPPORT_MAP 映射的关键是结构名称。结构名由C_FAMILY和 C_SUBFAMILY构成。可选的ARCH_SUPPORT_MAP的值有: PERFERED,AVAILABLE, BETA ,DEPRECATED , DEVELOPMENT, EARLY_ACCESS ,OBSOLETE。 OPTION ARCH_SUPPORT_MAP = (virtex2p = PREFERRED, others = AVAILABLE) OPTION ARCH_SUPPORT_MAP = (others = DEVELOPMENT)

  43. 微处理器外设规范-选项 (3)BUS_STD:总线标准。 OPTION BUS_STD=value,可用的值为:DCR,DSOCM, FSL,ISOCM,LMB,OPB,PLBV46(PLB)。也可定义 自己的总线标准。 (4)CLK_FREQ_RATIOS • 时钟频率比率。该选项指定了一个IP核时钟之间允许的比 率。它的值是逗号分割,名字-值成对。每一对名字命名: • OPTION CLK_FREQ_RATIOS=(P1/P2=(N1/D2,[N2: N3]/D2,N4/[D3:D4],N5),(P1,P2)/P3=(N6, [N7:N8]/[D5:N6]))其中,P1,P2,P3为的IP时钟端 口。N是分子,D是分母。

  44. 微处理器外设规范-选项 (5)CORE_STATE 该选项说明当前核的状态。例如:OPTION CORE_STATE=ACTIVE。可选的值有: ACTIVE,DEPRECATED,DEVELOPMENT, OBSOLETE。这些值的说明见前面的说明 (6)DESC 该关键字允许在GUI工具上显示核的简短描述。例如: OPTION DESC=“XPS GPIO” (7)HDL 指明了IP的HDL语言的可用性。可选的值:BOTH, MIXED,VERILOG,VHDL。

  45. 微处理器外设规范-选项 (8)IMP_NETLIST 该关键字引导平台生成器写一个用于外设的实现网表文件 (NGC)。设计者必须提供一个机制去综合设计者设计的IP。可选 值:TRUE或者FALSE。 (9)IP_GROUP 该关键字定义了IP核的群分类。 OPTION IP_GROUP=ipgroup_label。 (10)IPLEVEL_DRC_PROC 该关键字定义了Tcl入口点为IP级DRC例程。DRC只基于IP级设 置。例如: OPTION IPLEVEL_DRC_PROC=proc_name

  46. 微处理器外设规范-选项 (11)IPTYPE 定义元件的类型。例如:OPTION IPTYPE=PERIPHERAL。 可选的值:BUS,PERIPHERAL,PROCESSOR。 (12)LAST_UPDATED 表示IP最后升级的版本,例如9.2。 (13)LONG_DESC 该关键字允许在GUI工具上显示IP核的长的描述。 (14)MAX_MASTERS 这些标为IPTYPE=BUS的IP核所允许最大主设备的数目。 (15)MAX_SLAVE 这些标为IPTYPE=BUS的IP核所允许最大从设备的数目。

  47. 微处理器外设规范-选项 (16) PAY_CORE_MAP 说明核是免费的还是需要购买的。 (17)PLATGEN_SYSLEVEL_UPDATE_PROC 定义了系统级更新例程Tcl入口点。平台生成器完成了插入 MPD和MHS描述后运行该程序。在Tcl中使用它用来产生UCF入 口。更新只限于系统级的设计。

  48. 微处理器外设规范-选项 (18)RUN_NGCBUILD 引导平台生成器执行指令NGCBUILD将多个硬件网表插入 到单个的可使用的硬件网表。要求在产生的网表中包含UCF文 件。在Platgen实现的流程为: • 运行Tcl产生IP水平的UCF文件 • 运行XST从PAO文件内的HDL产生网表 运行NCGBUILD创建新的IP级的网表,该网表从前面的两个 的输出产生。当TCL产生约束或者使用edk_generatecore,这个 选项有效

  49. 微处理器外设规范-选项 (19)SPECIAL 这个关键字只用作内部使用,定义了元件的类。 (20)STYLE 定义了外设的设计的组成。 如果只有优化硬件网表,必须在MPD文件指定BLACKBOX 值。在这种情况下,只有BBD文件被EDK工具读取; 如果有混合的优化网表和HDL文件,必须在MPD文件指定 MIX值。在这种情况下,只有PAO文件和BBD文件被EDK工具读 取; 如果只有HDL文件,必须在MPD文件指定HDL值。在这种情 况下,只有PAO文件被EDK工具读取。

  50. 微处理器外设规范-选项 (21)SYSLEVEL_DRC_PROC 定义用于系统级DRC例程的Tcl入口点。DRC只基于系统级的 设置。例如: OPTION SYSLEVEL_DRC_PROC=proc_name (22)SYSLEVEL_UPDATE_PROC 定义用于系统级更新例程的Tcl入口点。更新只基于系统级的设 置。例如: OPTION SYSLEVEL_UPDATE_PROC=proc_name

More Related