原创 【博客大赛】【MAX10评测】(四)配置I -- 单映像

2015-7-16 13:32 1721 16 18 分类: FPGA/CPLD 文集: MAX 10 评测

 

         一般FPGA属于易失性芯片,类似于RAM,芯片上的数据和程序在掉电后不会保留,上电后程序需要从外部非易失性芯片加载,如EPCS系列芯片,也可以通过FPGAJTAG接口或者串行接口写入。

20150302133918142001.jpg

         ▲而MAX 10系列FPGA的配置则很灵活,因其芯片内嵌配置闪存模块CFMConfiguration Flash Memory),可用于存放程序映象。如上图所示。MAX 10系列FPGA的配置过程在内部进行,首先通过JTAG将配置数据写入到CFM中,然后内部配置过程自动从CFM加载配置数据至MAX 10的配置内存CRAMConfiguration RAM)。

         深入CFM内部,可分为3个扇区:CFM0CFM1C***。如下表,MAX 10内部配置可分为5种模式,分别对应对2个扇区的不同使用情况:

20150302133925339002.jpg

 

         上表中内部配置共有5种模式:

1)  Dual Compressed Image:双压缩映像

2)  Single Uncompressed Image:单未压缩映像

3)  Single Uncompressed Image with Memory Initialization:单未压缩映像带内存初始化数据

4)  Single Compressed Image with Memory Initialization:单压缩映像带内存初始化数据

5)  Single Compressed Image:单压缩映像

         其中第125种模式,3CFM扇区都用于存放映像;而第34种模式,未使用的扇区,主要是CFM1C***,可配置成用户闪存模块UFMUser Flash Memory)。

         ▼在QuartusII 14.1中,可设置内部配置的模式,以生成对应的映像文件:

  打开Device and Pin Options --> Configuration

  Configuration scheme选择Internal Configuration

Configuration mode中选择5种模式中的1种;

20150302133933946003.png

 

         可以发现,内部配置模式有一种是Dual Compressed Image,即在CFM中可以存放两个压缩映像,也就是说MAX 10 FPGA支持双启动模式Dual Boot

 

         下面通过实例演示下MAX 10 FPGA的配置:

 

----------------------------------- 单映像配置 -----------------------------------

         QuartusII 14.1默认配置就是Single Uncompressed Image912Kbits UFM),因此无需另外设置内部配置模式。

         LED_FLASH工程的基础上修改了下,将LED的功能由闪烁效果改成呼吸灯的效果:▼新建呼吸灯版本,不同的版本可以在源代码相同的情况下选择不同的工程设置。

20150302133941445004.jpg

 

▼修改顶层源码:例化了呼吸灯模块BreathLeds;加粗部分代码,根据宏BREATH_EN选择LED的输出

module LED_Flash_all(

    input clk,

    output LED1,

    output LED2,

    output LED3,

    output LED4,

    output LED5

    );

…… (此处省略N行代码)     

     // Breath Led  

    wire bled;

    BreathLeds breathleds_u(

      .clk(clk),

      .rst(1'b0),

     

      .led(bled)

       );                 

 

`ifdef BREATH_EN      

         assign LED1 = bled;

         assign LED2 = bled;

         assign LED3 = bled;

         assign LED4 = bled;

         assign LED5 = bled;

`else

         assign LED1 = dec_cntr ;

         assign LED2 = dec_cntr ;

         assign LED3 = dec_cntr ;

         assign LED4 = dec_cntr ;

         assign LED5 = dec_cntr ;

`endif

endmodule

 

▼只在LED_BREATH版本中加入宏:Settings-->Compiler Settings-->Verilog HDL Input设置中,添加Verilog HDL macroBREATH_EN。这种方法的好处就是无需在Verilog HDL源码中定义宏

20150302133948539005.png

 

         工程编译后默认只生成.sof文件,内部配置所需的.pof文件手动从.sof文件转换得到

▼打开File -->Convert Programming Files…

20150302133953402006.png

 

sof --> pof 转换

         1. Mode 选择为 Internal Configuration

         2.设置Options/Boot info…

         3.输入pof文件名

         4.勾选Create Memory Map File项,.map包含CFMUFM地址,其中含有通过Option/Boot Info选项而进行的ICB设置。

         5.选择sof文件

         6.点击Generate生成pof文件

20150302134004864007.png

 

▼按以上步骤生成pof文件完成

20150302134011723008.jpg

 

▼通过Programmer下载pof,在Program/Configure勾选CFM扇区,由于当前内部配置模式为Single Uncompressed Image,三个扇区都需要使用

20150302134017915009.png

 

▼点击Start开始下载

20150302134026587010.jpg

 

▼下载完成

20150302134036324011.jpg

 

▼演示视频

 

         预告:下篇“配置II将介绍双映像的配置过程

 

 

PARTNER CONTENT

文章评论2条评论)

登录后参与讨论

Hoki 2015-4-8 17:44

下载速度还挺快,检验过程挺慢的

wiliamzhou_446210705 2015-4-8 16:48

楼主使用原产的USB Blaster下载.pof文件时,下载速度慢吗?

用户188034 2009-9-14 19:05

好抽象
相关推荐阅读
Hoki 2017-01-11 17:35
LX9开发板呼吸灯实现
对LX9开发板硬件评测后,从这一节开始真正进入FPGA开发的世界。很多开发板的例程中必有跑马灯实验,老跑马也没意思,咱来把新潮的,整一个呼吸灯。 呼吸灯最初是出现在apple公司的笔记本产品中,当合上...
Hoki 2017-01-11 16:47
LX9的microblaze配置
虽然XC6SLX9芯片资源比较少,但是嵌一个microblaze还是搓搓有余的,这一节就来评测一下在XC6SLX9上microblaze的配置。 有两种方法配置microblaze,一是在ISE软件中...
Hoki 2017-01-11 16:32
zynq评测
Zynq芯片是业界第一款在FPGA中集成ARM核的芯片,由FPGA的发明者xilinx公司推出的。Zynq严格来说不能以FPGA来定义它,因为其是以处理器为中心的平台,能够在单芯片上提供软、硬件和 I...
Hoki 2017-01-11 16:19
u-boot
Zyny芯片启动加载分为3步: 1. 芯片上电启动,首先读取BootROM中的程序,初始化一些必要的外设,然后根据专用引脚电平判断该从何处启动first stage Bootloader(FSBL),...
Hoki 2017-01-11 16:09
基于zynq的交叉编译平台
Zynq芯片的最大特点是其集成了双ARM Cortex-A9处理器,因此zynq的应用基本是以这个ARM核为核心,再配合FPGA逻辑作为协处理器,几乎能实现所有较复杂的应用。并且在ARM上可以跑操作系...
Hoki 2017-01-11 15:54
u-boot image生成
这节介绍一下如何生成u-boot image文件,在SDK软件中点击Xilinx Tools→Create Boot Image工具即可生成,但是生成image文件需要首先集齐3个文件:u-boot....
EE直播间
更多
我要评论
2
16
关闭 站长推荐上一条 /3 下一条