tag 标签: usb3

相关博文
  • 热度 3
    2022-4-4 19:53
    2210 次阅读|
    1 个评论
    最近A和X的低端FPGA全部涨价了,价格已经翻了几十倍,原来50元左右的EP4CE10F17C8N芯片,现在的价格大约是1000元以上了,就是翻新的旧芯片,价格也在200元以上了。原来的SPARTAN6芯片,价格基本上在100元左右,现在飞涨到了报价几千元,还没有现货。所以现在需要设计一款基于国产FPGA的USB3.0开发板,FPGA选择是安路的,型号确定的是EG4A20BG256。 原来的基于ALTERA的FPGA+USB3.0的开发板,FPGA型号是EP4CE10F17C8N,具体可以参考网上的说明。安路的EG4A20BG256可以兼容EP4CE10F17C8N,所以设计起来就比较简单的了。另外安路还有一款FPGA,兼容XC6SLX16的型号,后面会有介绍。 正在更新中,,,,,,
  • 热度 23
    2020-2-15 16:38
    4886 次阅读|
    0 个评论
    基于SPARTAN6+DDR3+USB3开发板的DDR3读写实例4_TEST工程的约束文件修改
    前面生成了test工程,用于测试DDR3。在实际下载测试前,还需要修改一下exapmle_top.ucf约束文件。以下记录了修改的要点: 一、修改文件exapmle_top.ucf的第23行,修改VCCAUX的供电电压,从2.5V修改为3.3V,如下: 二、修改文件exapmle_top.ucf的第58行,输入晶振的周期修改为20nS。电路板上设计为单端晶振,3.3V供电,频率为50M。 三、修改文件exapmle_top.ucf的第74、75行,处理两个关键信号error和calib_done所在BANK的供电电压,修改为3.3V。另外,这两个信号实际连接到了W20和W22引脚上,也需要根据硬件电路板对应修改一下,如上面76、77行。 四、修改主文件exapmle_top.v的148行时钟相关部分。这部分内容比较复杂,需要熟悉ug388的时钟及PLL部分,帖图如下 : 上图中左侧是差分时钟输入的,先经过一个IBUFGDS原语缓冲,再接到PLL输入端。实际硬件电路板为单端时钟,不是差分时钟,这部分可以省略。PLL输出有三路,分别为CLKOUT0、CLKOUT1和CLKOUT2,前两个时钟经过BUFPLL_MCB后,生成2倍速的sysclk_2x和sysclk_2x_180,这是MCB工作的两个主要时钟。假定DDR3时钟频率为312.5M,2倍速为312.5M*2=625M。 具体修改如下 : 上图中的汉字注释部分,对于MCB用到的几个时钟已经说明的很清楚了,右下部分是出自于ug388中的第39面。 经过以上修改, 工程test已经和实际硬件电路板对应起来了,程序可以实际下载到电路板上运行了。 test工程的具体代码分析,见后面的文章。 良子USB,20200215 专注USB3.0、FPGA、PCIE、定制UVC摄像头 QQ:392425239
  • 热度 26
    2020-2-15 16:33
    6136 次阅读|
    0 个评论
    基于SPARTAN6+DDR3+USB3开发板的DDR3读写实例3_TEST工程建立及测试
    一、前面通过MIG生成了DDR3的IP核,同时生成了一个用于测试的工程test 。只不过这个test工程比较晦涩,并不是所见即所得,还得经过一些隐秘的步骤,才能呈现出来。前面生成IP核后,在ddr3文件夹内生成了1个mig_39目录,以及一些文件,如下图:其中有个mig_30_readme文本文件,需要看一下。 二、打开目录mig_39,里面含有3个目录,如下: 1、docs目录,里面含有两个DDR3开发的文档UG416和UG388。这两个文档需要仔细看,所有SPARTAN6与DDR3相关的内容都在这两个文档里。需要至少看十篇。 2、example_design目录,MIG提供的测试例程test,或者叫traffic generator。这里主要就是实际测试这个test工程。 3、user_design,这个目录是用户需要集成到自己的项目中的。 三、开始创建test工程。打开如下的目录,里面根本没有test工程的影子。先找到两个批处理文件,如下 ,直接双击不行,需要在命令行下进行, 四、打开ISE14.7自带的64位命令行程序,如下: 五、输入如下DOS指令,定位在前面的目录C:\ddr3\mig_39\example_design\par下,再运行create_ise.bat文件, 六、经过一段时间,test工程成功建立。如下, 七、回头再看C:\ddr3\mig_39\example_design\par目录,test工程已经出现了,如下 : 八、直接双击打开这个test工程,如下: 如上的test工程可以正常编绎成功。 1、上图中左侧的文件管理窗口,已经包含了.ucf约束文件,待会会进一步修改这个文件,以便和我的硬件开发板对应; 2、接下来会用CHIPSCOPE软件与实际电路板连接,观测实际的波形; 九、打开.ucf约束文件,修改了LED引脚以及时钟相关部分,再重新编绎工程,成功后连接电路板。 (具体修改部分见下一篇文章。) 十、连接成功后,直接点Trigger运行,成功如下: 十一、这里重点关注DDR3初始化是否成功的信号c3_calib_done。DDR3初始化成功,c3_calib_done信号为高;DDR3初始化失败,c3_calib_done信号为低。打开Trigger setup窗口,设置c3_calib_done为0,看初始化是否失败?程序运行后,没有触发到任何波形,说明DDR3初始化成功。 十二、进一步放大c3_p0_wr_data信号,如下,可以看到数据非常有规律,说明成功。 至此,DDR3已经正常运行了。后面,会对这个test工程详细分析。 良子USB,20200215 专注USB3.0、FPGA、PCIE、定制UVC摄像头 QQ:392425239
  • 热度 30
    2020-2-15 16:25
    6910 次阅读|
    0 个评论
    基于SPARTAN6+DDR3+USB3开发板的DDR3读写实例2_MIG生成DDR3的IP核
    一、前面介绍了含有DDR3的硬件开发板,以下内容都是基于这块FGA 开发板所进行的,生成的DDR3控制器直接可以下载到硬件电路板中实际验证,观察结果,加深理解学习。SPARTAN6芯片内部含有控制DDR3的硬核MCB,这个硬核还需要从软件上进行管理,这个软件即是MIG,以下是通过MIG生成DDR3的IP核的过程。生成过程主要是通过帖图体现的,为了创建一个可以参考的实例,帖图会比较详细,适合刚入门的使用,高手可以忽略。 二、如下图:先启动ISE14.7的IP核生成器CORE Generator, 二、IP核生成器CORE Generator启动后如下: 三、在IP核生成器CORE Generator里先创建一工程,如下: 四、在C盘里创建一文件夹ddr3,文件名为corgen,如下, 五、选择硬件电路板对应的FPGA型号,在Part选项中,选择SPARTAN6,XC6SLX45,封装为484引脚的,速度等级为-2的,如下: 六、切换Generation选项中,Verilog开发语言,如下: 七、按下图找到MIG的IP核,双击打开, 八、启动MIG画面如下,点下一步, 九、创建一个新的IP核 ,名字为mig_39,如下: 十、这一步选择兼容的FPGA型号,这里不作任何选择,直接下一步, 十一、这里选择BANK3上的MCB控制器, 十二、这里设置DDR3的时钟频率,工作在667M,一半就是333.3M;DDR3的实际型号为MT41J64M16JT-125,64M*16的, 十三、这里默认的就可以,直接下一步, 十四、选择一个128位宽的双向接口,寻址方式为ROW_BANK_COLUMN方式, 十五、默认、下一步, 十六、这里选择DDR3上电后校准的几个引脚,要对照实际的硬件原理图设置,RZQ电阻选Y2,ZIO引脚选W3,使能DEBUG调试,后面就用CHIPSCOPE调试,选择单端时钟,直接点一下步, 十七、上面的硬件设置,是和我的硬件电路板对应的,如下: 十八、MIG设置总体完成了,这一步是汇总相关的信息,直接下一步, 十九、点同意,点下一步, 二十、点下一步, 二十一、点Generate生成IP核, 二十二、IP核成功生成,点Close,结束。 至此,DDR3的IP核生成完毕。 下一篇将生成的TEST工程下载到实际硬件电路板中运行一下。硬件电路板如下: 良子USB,20200214 专注USB3.0、FPGA、PCIE、定制UVC摄像头 QQ:392425239
  • 热度 21
    2020-2-15 16:03
    6211 次阅读|
    0 个评论
    基于SPARTAN6+DDR3+USB3开发板的DDR3读写实例1_开发板简介
    一、 SPARTAN6系列FPGA价格便宜,功能强大,应用非常广泛。XC6SLX45FGG484自带DDR3硬核,可以方便处理DDR3芯片。484引脚的XC6SLX45FGG484,可以支持两个DDR3接口,单个DDR3容量可以到4G,适合数据缓存处理之用。之前开发项目定制了一款SPARTAN6的开发板,是基于SPARTAN6+DDR3+USB3的结构,很适合做摄像头方面的应用开发。目前已经适配了多种摄像头,简单的如并口摄像头(MT9P031),串口LVDS接口的摄像头(IMX178),以及串口HISPI接口的摄像头(MT9F002),后面会陆续介绍这些应用,目前先重点分享DDR3的读写。先上板子秀一下: 二、电路板大小为10厘米*8厘米,总体采用底板+子板的结构,底板就是上图的样子,子板就是各种摄像头子板,或者其它应用的子板,下图是LVDS接口的IMX178配合上面底板的图像: 三、FPGA芯片选用的是484引脚的XC6SLX45,如下图, 四、USB3芯片还是用最为成熟的CYPRESS方案,型号为CYUSB3014BZXI,如下图, 五、DDR3芯片为MICRON的1GBIT的MT41J64M16JT-125:G,如下图: 六、最后是电路板左侧的与摄像头子板相连的子板接口部分,100PIN的B2B高速连接器,内含40对高速差分信号,如下图: SPARTAN6+DDR3+USB3开发板总体介绍完毕,后面文章会对DDR3详细介绍。 良子USB,20200214 专注USB3.0、FPGA、PCIE、定制UVC摄像头 QQ:392425239