使用通常的 Quartus 软件版本 8.1 生成两个高性能控制器 IP 内核。 将两个内核同一个家长模块中实例化。
最简单的方法可能是为一个控制器编辑现有的 _example_top.v 文件。
第二个内核实例需要通过其设计层次结构路由额外的phy_clk_in输入,然后从第一个内核连接到phy_clk。
需要进行的编辑是:
clock_sharing_ example_top.v |
实例化core2_ddr2_hp。创建phy_clk_in端口,并连接到第一个控制器的phy_clk。 |
.v
|
1. 在模块声明部分将 phy_clk_in 输入到模块 I/O
2. 在实 例上创建新的phy_clk_in输入_controller_phy 并连接到 phy_clk_in。 |
_controller_phy.v
|
1. 在模块声明部分将 phy_clk_in 输入到模块 I/O
2. 将_ auk_ddr_hp_controller_wrapper实例上的clk输入从phy_clk编辑到phy_clk_in
3. 在_phy实例上编辑新的phy_clk_in输入,并连接到phy_clk_in。 |
_phy.v
|
1. 在模块声明部分将 phy_clk_in 输入到模块 I/O
2. 在 实 例上创建新的phy_clk_in输入_phy_alt_mem_phy 并连接到它。 |
_phy_alt_mem_phy.v
|
1. 在模块声明部分将 phy_clk_in 输入到顶级模块 I/O
2. 在_phy_alt_mem_phy_clk_reset实例(可在 924行周围找到)的全新phy_clk_in输入中进行编辑。 3. 编辑_phy_alt_mem_phy_clk_reset 模块声明(在 1472 行周围进行声明),以将 phy_clk_in 输入添加到模块 I/O 中。
4. 在_phy_alt_mem_phy_clk_reset 模块声明中,根据您的配置找到全速率或半速率_phy_alt_mem_phy_pll实 例(在 2278 行周围找到实例)
对于半速率,删除与"c0"端口的phy_clk_1x连接,并在half_rate_clk分配下方添加一个分配声明,标题为"分配phy_clk_1x = phy_clk_in"。
如需全速率编辑分配 phy_clk_1x 语句,请将 mem_clk_2x替换为 phy_clk_in。 |