Hi, I want to learn the implementation of CORDIC. I find the following website has some code which I would like begin with it.
formatting link
But I cannot simply simulate it in my Modelsim PE (student version) because of the setup problem. Could you, the FPGA and VHDL experts can tell me how to simulate it? Especially could you tell me how its structure about the behaviour and synthesis files arranged?
What is the 'setup problem'? I'd suggest solving that first.
I'd use Modelsim
Modelsim's GUI interface has a function that figures out the correct ordering of the files in the project. Right click on one of the source files and then under 'Compile' look for something that says about auto-generating the compile order (I forget what the exact verbage is, but it's there).
Then, I form cordic_pkg to Cordic library. But the compiling error is
** Error: (vcom-11) Could not find cordic.addsub.
** Error: C:/Modeltech_pe_edu_6.3c/cordic_learn/hdl/ cordic_synthesis.vhd(143): (vcom-1195) Cannot find expanded name "cordic.addsub".
That is the compiler looks for addsub in the Cordic lib, not work lib. What's wrong? What is the function and differences of the directory files. I cannot what are for simulation, what are for synthesis. Thanks again.
BTW, part of the contents in the cordic_synthesis.vhl is as the below. Is it useful to understand the configuration?
-- Optional embedded configurations -- pragma synthesis_off FOR ADD1 : addsub USE ENTITY cordic.addsub; FOR ADD2 : addsub USE ENTITY cordic.addsub; FOR ADD3 : addsub USE ENTITY cordic.addsub; FOR ALL : atan32 USE ENTITY cordic.atan32; FOR ALL : fsm USE ENTITY cordic.fsm; FOR ALL : shiftn USE ENTITY cordic.shiftn; -- pragma synthesis_on
I expect that you have to find modelsim.ini and fix up the source paths to match where they are on your machine.
Note that learning cordic theory has nothing to do with learning vhdl or modelsim. I would suggest starting with simpler examples or tutorials for each topic.
And I would recommend not spending any time learning hdl designer. Just use an editor and modelsim directly.
I do not have any of following folders! simprim = D:/vendors/Xilinx/mti/simprim x55 = D:/hdl_designs/x55/work_mti XilinxCoreLib = D:/vendors/Xilinx/mti/xilinxcorelib altera_mf = D:/vendors/quartus/mti/altera_mf mercury = D:/vendors/quartus/mti/mercury Shared_lib = D:/DEMO/demo_hdl_designer/Shared_lib/work_mti ??
These are just Modelsim library mappings for my setup. I would suggest you delete the modelsim.ini file and create a new one using the vmap command. Then if required update the file with your primitive library mapping like simprim/lpm etc, this is easily done using the GUI (Right_Mouse_Button in the workspace tab -> new -> library),
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.