Xilinx可编程逻辑器件设计与开发(基础篇)连载41:Spartan
五、 清除导入的I/O约束
设计者可以在【Clock Regions】窗口、【I/O Ports】窗口或者【Package Pins】窗口选择一个或多个对象,或者单击按钮取消所有选择,再运行【Tools】→【Clear Placement Constraints】命令,打开图10-48所示窗口,其中有三个选项,【Instance placement】清除实例的布局规划,【I/O port placement】清除I/O端口布局规划,【Both】上述两种对象均清除。
在这个例子中,我们在【Package Pins】窗口选中一个指定的Pin脚,以选择【I/O port placement】为例。
图10-48 【Clear Placement Constraints】窗口
单击【Next】按钮,打开图10-49所示对话框。选择【Unplace selected port】选项,单击【Next】,打开图10-50所示对话框,选中【Unplace one fixed port】,单击【Next】按钮,在出现的窗口单击【Finish】,清除一个I/O约束。
需要注意的是,这里的操作过程会随着设计者是否选择了对象,选择了几个对象,操作界面稍微有所不同。
图10-49 指定要被清除的I/O约束
图10-50 提示要清除一个Fixed类型的端口
六、 建立、配置I/O端口
在【I/O ports】窗口的右键菜单中选择【Create I/O Ports…】,弹出图10-51所示对话框,输入端口名如port_1,可以更改端口属性,也可以建立总线类型的端口。单击【OK】按钮,可以看到【I/O ports】窗口增加了一个端口。
图10-51 建立I/O端口
配置I/O端口的操作方式与此类似,在右键菜单中选择【Configure I/O Ports…】即可。
七、 建立I/O端口的管理接口
最大化【I/O Ports】窗口,选择所有*USB_0*的端口,运行右键菜单命令【Create I/O Port Interface…】,在弹出的对话框中输入usb0_interafce,如图10-52,单击【OK】,可以看到,这些*USB_0*端口有了一个管理接口,名为usb0_interface,如图10-53。使用这个方法,可以方便PCB管理。
图10-52 建立I/O端口接口
图10-53 建立好的I/O端口窗口
八、 分配I/O端口
PlanAhead提供了多种分配I/O端口的方法,可以自动分配,也有几种半自动分配方式,如将I/O端口分配到一个I/O Bank中【Place I/O Ports in an I/O Bank】,将I/O端口分配到一个指定的区域【Place I/OPorts in an Area】,和顺序分配I/O端口【Place I/O Ports SequenTIally】。
需要注意,为了保证I/O分配的正确性,需要在执行I/O分配之前,打开I/O分配自动DRCs校验功能。执行【Tools】→【OpTIons】→【General】,打开【AutomaTIcally enforce legal I/O placement】功能。
1. 自动分配I/O端口。
运行【Tools】→ 【Autoplace I/O Ports】即可完成I/O端口的自动分配。
2. 将I/O端口放置到一个I/O Bank中。
在图10-53所示的【I/O ports】窗口选择usb0_interface端口,在右键菜单中运行【Place I/O Ports in an I/O Bank】,或者在【Package】窗口单击按钮,可以看到与usb0_interafce相关的引脚都粘贴到鼠标上,在【Package】窗口拖动鼠标,找到合适的位置后单击鼠标左键,就可以完成I/O 端口的分配。
清除对usb0_interface 端口的分配,以方便进行下面的操作。
3. 将I/O 端口放置到一个区域中。
在图10-53 所示的【I/O ports】窗口选择usb0_interface 端口,在右键菜单中运行【Place I/O Ports in an Area】,或者在【Package】窗口单击按钮,这时可以在【Package】窗口拖动鼠标,画出一个适合放置所有I/O 端口的矩形框,释放鼠标,即可完成I/O 端口的分配。
清除对usb0_interface 端口的分配,以方便进行下面的操作。
4. 顺序放置I/O 端口。
在图10-53 所示的【I/O ports】窗口选择usb0_interface 端口,在右键菜单中运行【Place I/O Ports SequenTIally】,或者在【Package】窗口单击按钮,这时可以在【Package】窗口拖动鼠标,按顺序放置所有I/O 端口,直到分配完所有的I/O 端口。需要说明的是,这里描述的是综合前I/O 端口分配,应用的是CSV 文件,没有综合网表,时钟引脚、高速收发器和差分对不会被工具自动处理,因此,进行此类引脚分配时需要特别注意。
- 可编程逻辑控制器(PLC)基本操作及功能简介(03-07)
- 基于可编程逻辑器件的数字电路设计(10-16)
- 基于CPLD的机载雷达控保系统设计与实现(10-29)
- 德州仪器可编程逻辑和自动化控制器(PLC/PAC)解决方案(11-03)
- 基于Xilinx(赛灵思) CPLD的看门狗电路设计(10-09)
- 莱迪思技术专家分享:基于FPGA的视频监控时代(02-21)