首先介绍一下在剔除所需IP核中需要用的文件:
1、*.mhs: Hardware Specification (MHS)。主要描述系统总体上的硬件连接,外围设备及其地址空间。
2、*.mpd: Microprocessor Peripheral Description(MPD)。主要描述系统每一个外围设备的接口和硬件参数。
3、*.ucf:user constraints file(UCF)。主要描述了管脚的分配。
4、
Microprocessor Software Specification(MMS)
。主要描述系统设备的参数说明。
下面以剔除IIC IP核为例进行说明(我们通过GPIO,用软件实现模拟IIC总线协议)。
1、
misc_logic.v
中通过
GPIO2_t_out[6]
来选择
IIC
总线是连
GPIO
还是
IIC
的
IP
。这里我们修改为直接连
GPIO
。
2、
misc_logic_v2_1_0.mpd
中删除来自
IIC IP
的信号;同时删除
misc_logic.v
中
IIC IP
的信号。
3、
system.mhs
中删除
IIC IP
的信号,并把
iic_intr(
中断
)
去除。
4、
Generate Bitstream
,然后
Download Bitstream
,编译
Application
中的
iic_eeprom
,通过
XMS
下载运行。通过逻辑分析仪测试
ML403
上面的
SCL
和
SDA
,符合我们的要求。下图为泰克逻辑分析仪实测的波形。
我们以类似方法剔除了AC97 IP核、MAC IP核、USB IP核去除、LCD IP核和EMC IP核,占用的逻辑资源从原来的99%减少至55%。