NIOS II常见编译问题解答win7下的兼容性问题 
cygdrive/f/altera/10.0/nios2eds/components/altera_hal/build/system_rules.mk:120: /components/altera_hal/build/gnu_rules.mk: No such file or directory
/cygdrive/f/altera/10.0/nios2eds/components/altera_hal/build/system_rules.mk:124: /components/altera_hal/build/gtf_rules.mk: No such file or directory
make[1]: *** No rule to make target `/components/altera_hal/build/gtf_rules.mk'. Stop.
perl怎么下载
make: *** [system_project] Error 2
Build completed in 11.068 seconds
解决办法:因为在win7下的权限问题.具体解决方法参考下面的方法:
Under your Quartus II folder, go to bin->cygwin->bin folder, select the following files in the list below and then right-click and choose Properties. Under the Compatibility tab, check “Run this program in compatibility mode for:” and choose “Windows XP (Service Pack 2)”. Check “
Run this program as an administrator”, as well.
Here is the list of files that you can select to change their compatibility mode under the Quartus II->bin->cygwin->bin folder:
1.
2. Sh.exe
3.
4.
5.
6.
(undernios2eds\bin\nios2-gnutools\H-i686-pc-cygwin\libexec\gcc\nios2-elf\3.4.6)
8. Nios2-elf-g++.exe (under nios2eds\bin\nios2-gnutools\ H-i686-pc-cygwin\bin)
在英文网上查到的,这几个不同的exe文件在不同的bin文件夹之间,依次右击改掉属性,把允许管理员使用权限前面打上勾即可.
5.如果run Niosii时经常出现到2%后N久也不动,也不报错,甚至进度条也在滚,当然没有前进了。这时随便你等多久,他就呆在那里,很烦。后面发现是杀毒软件的作用,我只有用360安全卫士,而是关掉了它15分钟,在此期间,run就ok了,估计其他的杀毒软件更猛,所以大家在run的时候最好关上杀毒软件。
6.如果出现错误提示:There are no Nios II CPUs with debug modules available which match the values specified. Please check that your PLD is correctly configured, downloading a new SOF file if necessary.
则在nios IDE下,tools->Flash Programmer 选项中的下图打勾即可(条形框要下拉)。
7.在编译niosii时如果出现了报错make: *** [system_description/../obj/system.h-t] Error 1。网
上的一些解法:1.如果系统跑了uc/os系统,则必须加入timer,如果没有跑系统可以不加,但是我没有跑系统,并且我加了个timer试了下也不行。2.还有一种说法是右击工程名在属性栏中把ram选项改为on-chip momery,但是我不知道他说的哪个,反正没有到这个选项的地方。3.有人说是软件或者操作系统问题,建议重装软件或系统,可是今天还能用,估计不是,重启了下软件,未果。4.后面的google中搜了下,网上人说在构建niosiicpu时,把设置页面的MPU(内存保护单元)去掉即可。终于解决掉了这个可恶的问题。
8. 关于Nios II中Verify failed between address 0xxxx and 0xxxx错误的解决,错误一般的提示为:Verifying 000xxxxx ( 0%)% C; Q0 H2 R J7 W* Z9 O R* r
Verify failed between address 0xxxxxx and 0xxxxxx( O" ^0 u; e9 E: E7 X
Leaving target processor paused
网上的人总结的解决方法如下:1. 首先要根据address后面的两个地址判断出错的到底是什么器件。一般情况出现错误的大多是存储器。
l1 _5 y: {+ r& Q2 e! }- G 判断的方法是根据sopc中的地址,或者是system.h中的地址,查
相应出错的器件。9 v$ ~- X5 h( r# T4 f" I$ D3 T
c0 `, z; n6 V2. 检查硬件焊接是否正常。- O( Z" V/ W4 h! L
很多时候有些问题是硬件焊接造成的,这个主要针对的是自己焊接的板子,一旦地址数据总线有任何焊接问题,都会出现verify failed错误。 N. B/ E# m1 b& ?5 N4 B5 W* B
) q- d$ E0 t: r& M8 A! o& K3. 检查sopc中的componet是否正常。
( }& i, H) L. E 如果是自己加入的接口逻辑,这个部分要确认其正常与否。' a# |, E9 U1 [& P3 z
$ F- x7 t' u) L! Z( w4. 检查Quartus中的设计:
- H$ O& j; |5 e$ Q+ ? _* M 检查引脚锁定是否正确,必须一一对应,不能有一个错误;
! k1 `% e6 [* b/ [' @6 P$ s( q& {% R 地址对齐问题:针对8、16、32位的外部存储器,对应地址最低位的应该是0、1、2。也就是说如果用16位的外部存储器,那么它的最低位是ADD[1],而ADD[0]是不用的,其他同理。
2 i1 `& b2 w. k8 v8 i, E 数据总线必须是双向IO口,这点很容易忽略。
* c$ G% \$ G% {* }) W- i 如果是SDRAM,需要计算并设定PLL的相移。
9 q+ O( F! H+ 5. Nios IDE中检查项目设计是否正确。
6. 就是.bdf文件中的symbol在运用“Generat Pins for Symbol Ports”自动生成引脚的时候,生成的引脚表面上是与symbol连接在一起的,可实际上没有,只要手动把Ports 与Pins连一下,问题便可以解决了
而我碰到的就是Sdram的问题,因为我的sdram忘了接clk时钟脚了,那时候用的niosii核,核外是没有与sdram的clk连接的引脚的,因为它的时钟不是cpu产生,是由外部或者pll产生。
9.在用quartusII编译时,包含了sopc系统,出现如下错误:
Error: Can't name logic function TftTest of instance "TftTest" -- function has same name as current design file,未解决!
10.在 nios 里下载软件程序时,会出现 assertion "m_state == STATE_DEBUG" failed: file
"nios2oci.cpp", line157 Using cable
"USB-Blaster [USB-0]", device 1, instance 0x00 Pausing target processor: not
responding. Resetting and trying again: D:\altera\81\nios2eds\bin\nios2-download: line 594: 6300 Hangup
nios2-gdb-server --instance 0 --tcpport none --wri te-pid
./Debug/nios2-download.pid ./Debug/GigaCard.elf.srec
这个问题在我调试的过程中偶尔会出现,而且是没有规律的,也正是这个问 题,总是阻碍着我们前进的脚步,后来我们发现一个程序本来是可以下到 onchi
p-memory 中的,后来同样的程序无论如何都下不进去了,于是我们基本可以确 定问题出在了硬件。对于有控制器的系统,晶振肯定是非常重要的,于是我们测
晶振的输出是不是正常的,结果是有时正常有时不正常,这说明晶振虚焊了,经 过我们小宝同学精心补焊,上面那个问题就再也没有出现过了。 在 nios
里下载软件程序时,出现 Using cable "USB-Blaster [USB-0]", device 1, instance 0x00 Pausing
target processor: not responding. Resetting and trying again: FAILED Leaving
target processor paused 这个错误在可编程部分的原因大多是引脚分配错误。网上有人说要在 quart us 将没有用到的 FPGA

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。