quartus常见问题解决

2020-04-14 22:56

USB-Blaster问题:

————————————————————————————————- USB-Blaster Driver 驱动Vista x64环境下无法安装

直接原因:兼容性问题

可能根本原因:quartus II 8.0的驱动不含签名,而Vista x64只认带签名的驱动。 解决方案:请使用XP x32环境。

更换quartus版本无法安装USB-Blaster Driver驱动,提示“名称已用作服务名或服务显示名”

直接原因:7.2版本与8.0版本的驱动不通用 根本原因:windows驱动卸载卸不干净 解决方案:注册表删除

**同时装有7.2与8.0时,只能使用7.2的驱动

————————————————————————————————- Quartus II 8.0 问题:

————————————————————————————————-

Internal Error: Sub-system: HDB, File: /quartus/db/hdb/hdb_inst_name.cpp, Line: 11432 Error accessing data member. Not data member owner Stack Trace:

0x2853D : HDB_SYN_INSTANCE_NAME::set_m_children + 0x1D (DB_HDB)

End-trace

Quartus II Version 8.0 Build 215 05/29/2008 SJ Full Version 解决方案:删除db下所有文件,重建工程。

quartus 引脚相关

引脚手工批量导入的方法(可避免自动导入全部引脚造成的大量警告) 直接修改.qsf文件,在尾部添加引脚定义,形如: set_location_assignment PIN_AD15 -to iCLK_50 set_location_assignment PIN_T29 -to iKEY[0]

set_location_assignment PIN_W27 -to oLEDG[0] set_location_assignment PIN_W25 -to oLEDG[1] set_location_assignment PIN_W23 -to oLEDG[2] set_location_assignment PIN_Y27 -to oLEDG[3] set_location_assignment PIN_Y24 -to oLEDG[4] set_location_assignment PIN_Y23 -to oLEDG[5] set_location_assignment PIN_AA27 -to oLEDG[6] set_location_assignment PIN_AA24 -to oLEDG[7]

**使用自动导入引脚时必须注意:

Assignments->Device..->Device and Pin Options…->Unused Pins: As output driving ground 改为 As input tri-stated 解决Nios II无响应

Assignments->Device..->Device and Pin Options…->Dual-Purpose->nCEO: Use as programming pin 改为 Use as regular I/O 解决AD25引脚无法分配

**仿真前务必先产生网表

————————————————————————————————- DE2-70开发板SOPC Builder的配置:

————————————————————————————————- on-chip memory 大小1.1Mb 测试100kB,实际使用57KB正常 SSRAM 选CY7C1380C SSRAM 大小2MB 默认即可

FLASH 选Flash Memory(CFI) 大小8M 自定义:地址宽度 22 数据宽度 16 wait 100 SDRAM 选SDRAM Controler 大小64MB 自定义:数据宽 32 chip 1 bank 4 row 13 col 9 Issue one refresh command every: 7.8125 us Delay after powerup, before initialization : 200 us PIO

LEDG 数据宽度 9 output port only LEDR 数据宽度 18 output port only KEY 数据宽度 4 input port only

SW 数据宽度 18 input port only

————————————————————————————————- NIOS II8.0 问题:

————————————————————————————————- Error parsing project STF file

The software settings (STF) file associated with this project is damaged. This may be fixed by copying your source files into a new C/C++ application project. For more details see the error log.

直接原因:nios工程路径中含有空格! 根本原因:JDK6的bug 参见

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6506304

解决方案:由于NIOS II使用含有该bug的JDK6的进行开发,固仅更换JRE无效……请避免工程路径中的空格

,这意味着不能使用”我的文档”等地存放工程。

常用nios II template空间占用情况

hello_world 使用jtag_uart作为标准输出的情况(以下空间占用与Nios软件配置中选择on-chip memory、SSRAM、SDRAM、FLASH无关,与SOPC builder建立的硬件配置有关,官方给出的大小是~69 kbytes)

名称 优化参数1 优化参数2 优化参数3 优化参数4 hello_world 默认(-O0) 默认(-O0) -Os -Os hello_world_syslib 默认(-O0) -Os 默认(-O0) -Os 空间占用 66KB 56KB 38KB 28KB

Hello MicroC/OS-II 使用jtag_uart作为标准输出的情况(以下空间占用与Nios软件配置中选择on-chip memory、SSRAM、SDRAM、FLASH无关,与SOPC builder建立的硬件配置有关)

名称 优化参数1 优化参数2 优化参数3 优化参数4 hello_ucosii 默认(-O0) 默认(-O0) -Os -Os

hello_ucosii_syslib 默认(-O0) -Os 默认(-O0) -Os 空间占用 127KB 102KB 100KB 75KB

使用jtag_uart作为标准输出与使用lcd作为标准输出的区别:

在system.h中:

#define ALT_STDOUT “/dev/lcd”

#define ALT_STDOUT_TYPE “altera_avalon_lcd_16207″ #define ALT_STDOUT_BASE 0×00011000 #define ALT_STDOUT_DEV lcd

#define ALT_STDOUT “/dev/jtag_uart”

#define ALT_STDOUT_TYPE “altera_avalon_jtag_uart” #define ALT_STDOUT_BASE 0×00011010 #define ALT_STDOUT_DEV jtag_uart

**使用lcd作为标准输出时必须注意

Reduced device drivers前面的勾不能去掉,否则LCD无响应

数据类型 “alt_types.h”中 #ifndef ALT_ASM_SRC typedef signed char alt_8; typedef unsigned char alt_u8; typedef signed short alt_16; typedef unsigned short alt_u16; typedef signed long alt_32; typedef unsigned long alt_u32; typedef long long alt_64;

typedef unsigned long long alt_u64; #endif

LED控制相关

使用在中的IORD、IOWR

(注意是/altera/80/ip/nios2_ip/altera_nios2/HAL/inc/io.h,不是/altera/80/quartus/bin/cygwin/usr/include/io.h) #define IORD(BASE, REGNUM) \\

__builtin_ldwio (__IO_CALC_ADDRESS_NATIVE ((BASE), (REGNUM))) #define IOWR(BASE, REGNUM, DATA) \\

__builtin_stwio (__IO_CALC_ADDRESS_NATIVE ((BASE), (REGNUM)), (DATA))

altera_avalon_pio_regs.h中的总线读写

#define IORD_ALTERA_AVALON_PIO_DATA(base) IORD(base, 0)

#define IOWR_ALTERA_AVALON_PIO_DATA(base, data) IOWR(base, 0, data) 实际以巨集IORD与IOWR实现。


quartus常见问题解决.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:西和县农村公路建设养护经验材料材料3

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: