Xilinx Virtex-II Pro开发板为各大学主要采用的开发板,该板上主芯片XC2VP30内置两个硬核PowerPC405,具有30 816逻辑单元、136个18位的乘法器、2 448 Kbit的Block RAM。国内研究应用多使用该板进行单核系统设计,未能充分利用其双核资源。其原因在于:Xilinx公司软件对Virtex-II系列开发板的双核系统设计支持性不好;Virtex-II Pro开发板只具有一个串口输出,给调试带来了极大的不便。 针对在Virtex-II Pro开发板进行双核系统设计难 度大的问题,本文给出双核硬件系统的构建方法,提出一种共享串口输出和共享存储器的系统结构,能够充分利用板上资源,下载调试非常便利,可以很好地支持双核的应用设计。 1 硬件系统设计 系统采用EDK10.1i03开发环境。设计双核的系统硬件结构如图1所示。 系统具有2个PowerPC405处理器:PPC_0和PPC_1,两个处理器具有各自独立的私有Boot BRAM,用于存储相应的应用程序。PPC_0通过总线PLB_0控制外设SDRAM,PPC_1通过总线PLB1控制外设LED_4Bits。两个处理器具有各自的中断和复位。JTAG具有2个PowerPC的接口,并通过共享串口进行信息输出。 双核系统设计流程如下: (1)利用BSB(Base system Builder)向导生成单核系统。 系统BSB设置的参数如下: (2)添加和配置IP 由于EDK10不支持双核系统设计,因此需要手动添加和配置相关IP,需添加的IP核有: MHS(Microprocessor Hardware Specification)是描述硬件结构的文件,需要修改MHS文件对添加的IP核进行配置。这里给出主要的ppc405、bram_block、xps_mutex核的配置说明,其他IP核将不再赘述。 ①对PPC405_1的配置说明 #用于PPC_1调试 BUS_INTERFACE IPLB0=plb1//总线 END ②对Mutex核进行配置 #该地址应用于Mutex初始化 #该地址应用于Mutex初始化 END ③共享BRAM核进行配置 PORTA END (3)生成地址空间(Generate Addresses) 使用Generate Addresses命令,系统自动分配地址空间。由于软件本身不支持双核系统设计,在地址空间冲突时,需要手动对冲突的地址空间进行调整。使用Generate Bitstream可产生系统的硬件比特流。