Главная > Статьи > Загрузка программы из EPCS флеш памяти

Загрузка программы из EPCS флеш памяти

14.         В программе Quartus II открываем файлы nios_epcs.v и sopc_builder.v. В файле sopc_builder.v отыскиваем модуль sopc_builder и копируем порты модуля в файл nios_epcs.v. Подключаем в головном файле порты к портам системы SOPC Builder. Код файла проекта будет иметь следующий вид:

//Nios II system
//load from EPCS
//synopsys translate_off

`timescale 1 ps / 1 ps

// synopsys translate_on

module nios_epcs (        
        dclk
        sce
        sdo
        clk, data0);

            output dclk;

            output sce;

            output sdo;   

            input data0;

            input clk;

 //sopc builder

 sopc_builder sopc_inst (

                      // global signals:

                       .clk_0 (clk),

                       .reset_n (1'b1),

                      // the_epcs_flash

                       .data0_to_the_epcs_flash             (data0),

                       .dclk_from_the_epcs_flash                       (dclk),

                       .sce_from_the_epcs_flash                       (sce),

                       .sdo_from_the_epcs_flash                       (sdo),

                    );

endmodule

15.         Выполняем анализ и синтез проекта. Выбираем Processing > Start > Analysis & Synthesis (или кликаем на соответствующую иконку в панели инструментов (Ctrl + K)).

16.         После успешного выполнения анализа и синтеза проекта, необходимо выполнить необходимые назначения для портов проекта. Рассмотрим внимательно выводы проекта. У нас есть входной тактовый сигнал и выводы последовательного интерфейса с чипом EPCS. Открываем планировщик выводов (Assignments > Pin Planer), в котором назначаем порту проекта clk номер вывода тактового сигнала на нашей отладочной плате. Закрываем планировщик выводов и открываем редактор назначений (Assignments > Assignment Editor), в котором назначаем портам проекта, подключенным к ядру epcs_flash, зарезервированные выводы интерфейса SPI, (см. рис. 26). Это желательное, нежели обязательное действие.

рис. 26

17.         К такому же желательному действию, я отнесу добавление к проекту исходных *.v файлов, сгенерированных в системе SOPC Builder. Эти файлы можно найти в папке с проектом.

18.         В заключении создадим SDC файл. Он необходим для определения временных ограничений в нашем проекте. Файл будет иметь следующий вид:

set_time_format -unit ns -decimal_places 3

create_clock -name {clk} -period 40.000 -waveform { 0.000 20.000 } [get_ports {clk}]

derive_clock_uncertainty

Система SOPC Builder генерирует собственный файл временных ограничений, который можно найти в навигаторе проекта. Сохраняем файл File >Save As... , проверяем директорию сохранения, оставляем отметку добавления файла к текущему проекту (Add file to current project), а в графе File name пишем nios_epcs.sdc.  Кликаем Ok.

19.         Установим полезную настройку "умной компиляции". Она позволяет пропускать компилятору выполнение задач (синтеза, компоновки и пр.) при отсутствии изменений в исходных файлах, что значительно экономит время компиляции. Выбираем Assignments > Settings, в окне настроек выбираем Compilation Process Settings и ставим отметку напротив Use smart compilation.

20.         Запускаем полную компиляцию. Выбираем Processing > Start Compilation (или кликаем на соответствующую иконку в панели инструментов (Ctrl + L)). После успешного завершения мы будем иметь два важный файла: файл конфигурации чипа Altera - *.sof и файл информации о системе SOPC Builder - *.sopcinfo.

<< Назад     Оглавление     Далее >>
Хостинг от uCoz