Xilinx的CORDIC IP核实现平方根功能需要怎么设置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Xilinx的CORDIC IP核实现平方根功能需要怎么设置相关的知识,希望对你有一定的参考价值。

我用CORDIC来实现平方根运算,设置好后仿真结果总是高阻,它的参数设置也不麻烦啊!怎么总是有问题呢?
是不是有什么特别需要注意的地方呢?比如输入端口核输出端口的位数是不是有特殊要求?如果输入36位的话,输出设定为默认的19位应该可以吧?它的设置里面还有一项:ROUND MODEL ,有四个选项 truncate ,positive infinity, pos neg infinity 和 neareset even ,不知道这个选项是干吗的?
哪位大侠用过,给点提示!
谢谢哈
多谢多谢多谢多谢

参考技术A 第一种:Truncate:直接取整
第二种:Round Pos Inf:四舍五入,+0.5之后四舍五入,在负数时和第三种有区别。
第三种:Round Pos Neg Inf:四舍五入
第四种:四舍五入,0.5算舍去。
参考技术B 它不是有datasheet吗

(转)modelsim10.0C编译ISE14.7的xilinx库(xilinx ip核)

1.打开D:\Xilinx\14.7\ISE_DS\ISE\bin\nt64\compxlibgui.exe,nt64表示系统是64位,如果是32位,换成nt,然后按照界面所示一步一步执行,

2.修改modelsim.ini,将其属性修改为可写,然后将(注意第一步中我只将verilog的库文件编译了)

cpld_ver = D:\Xilinx\14.7\ISE_DS\ISE\verilog\mti_se\10.0c\nt64\cpld_ver

secureip = D:\Xilinx\14.7\ISE_DS\ISE\verilog\mti_se\10.0c\nt64\secureip

simprims_ver = D:\Xilinx\14.7\ISE_DS\ISE\verilog\mti_se\10.0c\nt64\simprims_ver

uni9000_ver = D:\Xilinx\14.7\ISE_DS\ISE\verilog\mti_se\10.0c\nt64\uni9000_ver

unimacro_ver = D:\Xilinx\14.7\ISE_DS\ISE\verilog\mti_se\10.0c\nt64\unimacro_ver

unisims_ver = D:\Xilinx\14.7\ISE_DS\ISE\verilog\mti_se\10.0c\nt64\unisims_ver

xilinxcorelib_ver = D:\Xilinx\14.7\ISE_DS\ISE\verilog\mti_se\10.0c\nt64\xilinxcorelib_ver

添加到

; $MODEL_TECH/../ieee
; $MODEL_TECH/../vital2000
;

后面,需要注意将属性换位为只读

3.此时便可以通过modelsim来仿真xilinx ip核,注意有可能会碰到ip 核生成的仿真do文件中vlog -mfcu $env(XILINX)/verilog/src/glbl.v过不去,这是由于XILINX环境变量引起的,打开ISE Design Suite 64 Bit Command Prompt,输入vsim来打开modelsim再执行仿真可解决此问题。

以上是关于Xilinx的CORDIC IP核实现平方根功能需要怎么设置的主要内容,如果未能解决你的问题,请参考以下文章

FPGA的以太网ip核具体实现步骤,怎样仿真其功能

FPGA教程案例24通过cordic核计算复数的相位

Xilinx FPGA时钟IP核注意事项

FPGA教程案例15基于vivado核的Cordic算法设计与实现

Xilinx Vivado的使用详细介绍:使用IP核

Xilinx Vivado的使用详细介绍:使用IP核