您的位置:首页 > 移动开发 > IOS开发

nios ip -4

2015-01-25 14:42 246 查看
终于,我学会了一点点,阿窝龙妹妹,这些天,一直很心烦,苦恼,难耐,都是这个龙妹妹陪我走到了现在,谢谢你。。

   

    在这之间感触最深的,就是“无助”,或者说“不甘心”,有很多人不会,你觉得大家同样傻X,又有些NX的人会,可是他很高傲,懒得知指导你,觉得你真傻X,这都不会,但是,说实话,如果跟单片机比起来,Avalon-MM的资料真的是很少……

    当然www.altera.com里面的还是有很多 ,Avalon-MM Interface Speciation,很不错,只是,可能你看了也不会很知道。

   

    写过《深入浅出玩转FPGA》的吴厚航:特权同学,估计学fpga的很多人都知道,听说他在录制nios2的视频,他身边资源比我多的去,等到那一天,阿窝龙妹妹可能就不会再那么神奇了,受益于此的人,从此会觉得洒脱。

    这几天写了这几个IP ,终于全部搞定了。不过只是简单的接口,可能某些层面上压根不算什么IP吧,虽然再加代码只是加了描述就OK了(现在觉得很简单)。但我还是折腾了好几天,以后慢慢练功,总会柳暗花明的。。。

    下面是我做的IP核,以前连载:

Crazy_LED:http://www.cnblogs.com/crazybingo/archive/2011/03/03/1969603.html

Crazy_KEY:http://www.cnblogs.com/crazybingo/archive/2011/03/02/1969160.html

Crazy__KEY_LED:http://www.cnblogs.com/crazybingo/archive/2011/03/03/1969873.html

Crazy_LCD1602http://www.cnblogs.com/crazybingo/archive/2011/03/03/1970110.html

Crazy_SRAM:http://www.cnblogs.com/crazybingo/archive/2011/02/27/1966552.html

Crazy_SDCARD:http://www.cnblogs.com/crazybingo/archive/2011/03/03/1970151.html





 

   至此,我表述我其中遇到的痛苦,希望有些人能够看的懂:

(1)Avalon-MM的命名最好根据规范来命名:csi_是时钟,avs是龙妹妹从机端口,coe是从机通道

(2)地址必须有,而且必须是4的倍数(pdf说1,4,8,16…但我测试0不行)

(3)bytebeenable 可以没有,如果地址线小于8bits的话

(4)如果只是write,可以只写write data process

(5)如果只是read,可以只写read data pocess

(6)如果想写的同时读取自己(led = led + 1),在write process 的同时,也写 read process

(7)conduit信号大于1个的,address地址映射方式,必须一一对应

(8)alt寄存器赋值三种方式:

一、
#ifdef    CRAZY_LED_DATA

#define    LED_DATA_ADDR    (LED_DATA_BASE | (1<<31))

#define    LED_DATA    (*(volatile unsigned int*)LED_DATA_ADDR)

#endif
二、用API函数 IOWR,IORD…
三、用结构体
#ifdef    CRAZY_LCD1602

#define    LCD1602_ADDR    (LCD1602_BASE | (1<<31))

typedef struct

{

    alt_u32    LCD_EN        :    32;

    alt_u32    LCD_RW        :    32;

    alt_u32    LCD_RS        :    32;

    alt_u32    LCD_DATA    :    32;

}LCD1702_T;

#define    LCD1602    (*(LCD1602_T)LCD1602_ADDR)
 
个人推荐用第一种,比较直观整洁

 

(9)我发现,用sopc里面的component,至少pio,生成的verilog代码,看起来很变扭,而且反过去生成IP,会错误,由此推断是不是Altera写戳了

(10)以后慢慢补充……
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nios IP