BSACPLD 17 December 7, 2007 Posted December 7, 2007 · Report post Здравствуйте! В свое время искал AVR корку, но ничего подходящего не смог найти. В результате был создан данный проект, которым и хочу поделиться. В проекте создан CPU с SPI (master), GPIO, интерфейсом к DataFlash и линиями внешних прерываний. Тестовая программа реализует обмен по Ethernet через ENC28J60 (ARP, Ping и частично UDP). Из особенностей CPU: Программируемые адреса прерываний. Уменьшенное время выполнения некоторых команд. Список поддерживаемых команд находится в файле cpu.txt. Файлы: test_cpu.qar - проект с CPU. test_avr - тестовая программа I8I16.exe - конвертер файлов из Intel HEX в HEX для инициализации памяти в Quartus. С уважением, BSACPLD. test_cpu.rar Quote Share this post Link to post Share on other sites More sharing options...
Leka 1 December 7, 2007 Posted December 7, 2007 · Report post А что в test_cpu.qar ? У меня ISE, Квартуса нет. Quote Share this post Link to post Share on other sites More sharing options...
BSACPLD 17 December 7, 2007 Posted December 7, 2007 · Report post А что в test_cpu.qar ? У меня ISE, Квартуса нет. rar подойдет? test_cpu_qar.rar Quote Share this post Link to post Share on other sites More sharing options...
Leka 1 December 7, 2007 Posted December 7, 2007 · Report post rar подошел :beer:, но вижу, что без Квартуса все равно не обойтись. :crying: Quote Share this post Link to post Share on other sites More sharing options...
BSACPLD 17 December 7, 2007 Posted December 7, 2007 · Report post rar подошел :beer:, но вижу, что без Квартуса все равно не обойтись. :crying: Если есть хороший инет, можно скачать по ссылке: ftp://ftp.altera.com/outgoing/release/61_dvd_windows.iso Quote Share this post Link to post Share on other sites More sharing options...
vetal 0 December 7, 2007 Posted December 7, 2007 · Report post добавлю в свою коллекцию....авось пригодится :) Quote Share this post Link to post Share on other sites More sharing options...
Leka 1 December 7, 2007 Posted December 7, 2007 · Report post Если есть хороший инет, можно скачать по ссылке: ftp://ftp.altera.com/outgoing/release/61_dvd_windows.iso Web edition позже скачаю, объем меньше. ... I8I16.exe - конвертер файлов из Intel HEX в HEX для инициализации памяти в Quartus. ... Без Квартуса залить не получится? У меня тоже есть проект с софт-процессором(самопальным), скомпилированная прошивка заливается/обновляется через последовательный порт после конфигурации. Quote Share this post Link to post Share on other sites More sharing options...
BSACPLD 17 December 7, 2007 Posted December 7, 2007 · Report post Web edition позже скачаю, объем меньше. Без Квартуса залить не получится? У меня тоже есть проект с софт-процессором(самопальным), скомпилированная прошивка заливается/обновляется через последовательный порт после конфигурации. Без Квартуса залить не получиться, потому, что память программ организована как ROM. Если сделать логику заливки, то можно будет заливать и после конфигурации. Данный вариант не окончательный, он является лишь частью двух больших проектов. Я заливаю следующим образом: 1) I8I16.exe 2) Update Memory Initialization File 3) Assembler 4) JTAG Quote Share this post Link to post Share on other sites More sharing options...
mse 0 December 8, 2007 Posted December 8, 2007 · Report post ... Программируемые адреса прерываний. ... Тут, конечно, оригинальный АВР курит тихонько в стороне... Quote Share this post Link to post Share on other sites More sharing options...
Leka 1 December 8, 2007 Posted December 8, 2007 (edited) · Report post (Скачать Квартус не получилось.) Кстати, почему Циклон, а не Спартан? У Альтеры нет блочной памяти с асинхронным чтением (у Xilinx есть альтернатива - распределенная память), поэтому у софт-процессоров(альтеровских) с коротким конвейером хуже с компактностью и быстродействием. Edited December 8, 2007 by Leka Quote Share this post Link to post Share on other sites More sharing options...
dvladim 0 December 8, 2007 Posted December 8, 2007 · Report post Пара вопросов возникла: Есть ли возможность создать программу на "C", и скомпилить под этот процессор? У вас пример на ассемблере. Если реализовано лишь подмножество AVR, то потребуется доводка компилятора. Или разработка программ планируется только на ассемблере? И второй. Процессор написан на AHDL. Это ограничивает его использование Альтерой. Почему небыл выбран Verilog или VHDL? Quote Share this post Link to post Share on other sites More sharing options...
BSACPLD 17 December 8, 2007 Posted December 8, 2007 · Report post (Скачать Квартус не получилось.) Кстати, почему Циклон, а не Спартан? У Альтеры нет блочной памяти с асинхронным чтением (у Xilinx есть альтернатива - распределенная память), поэтому у софт-процессоров(альтеровских) с коротким конвейером хуже с компактностью и быстродействием. Cyclone потому, что этот процессор делался для проекта на Cyclone. К тому же у Альтеры несколько выше быстродействие, в проекте для которого создавался процессор весь упор был на быстродействие логики (генератор синхроимпульсов), а не процессора. Пара вопросов возникла: Есть ли возможность создать программу на "C", и скомпилить под этот процессор? У вас пример на ассемблере. Если реализовано лишь подмножество AVR, то потребуется доводка компилятора. Или разработка программ планируется только на ассемблере? И второй. Процессор написан на AHDL. Это ограничивает его использование Альтерой. Почему небыл выбран Verilog или VHDL? Что Вы понимаете под подмножеством AVR? Если Вы имеете ввиду, что он совместим по системе команд, то да. Данный процессор, скорее даже не AVR, а совместимый по командам с AVR, у него своя собственная периферия и несколько отличная организация памяти. РОН и РВВ не отображаются на область ОЗУ. Сейчас процессор поддерживает не все команды (см. cpu.txt), если можно будет настроить компилятор соответствующим образом, то можно использовать и "C". AHDL потому, что Verilog я сейчас только изучаю, а AHDL пользуюсь уже давно. Кстати, а Вы не можете мне посоветовать какую-нибудь толковую книжку по Verilog? Quote Share this post Link to post Share on other sites More sharing options...
Leka 1 December 8, 2007 Posted December 8, 2007 · Report post ...посоветовать какую-нибудь толковую книжку по Verilog? На русском - очень мало литературы, для первого знакомства можно: www.compitech.ru --> архив --> 2..5'2001 С.Емец, 6..7'2001 В.Стешенко. http://www.platan.ru/shem/pdf/verilog.pdf http://www.platan.ru/shem/pdf/verilog2.pdf http://www.platan.ru/shem/pdf/verilog3.pdf Quote Share this post Link to post Share on other sites More sharing options...
BSACPLD 17 December 8, 2007 Posted December 8, 2007 · Report post На русском - очень мало литературы, для первого знакомства можно: www.compitech.ru --> архив --> 2..5'2001 С.Емец, 6..7'2001 В.Стешенко. http://www.platan.ru/shem/pdf/verilog.pdf http://www.platan.ru/shem/pdf/verilog2.pdf http://www.platan.ru/shem/pdf/verilog3.pdf Спасибо за ссылки! :a14: Quote Share this post Link to post Share on other sites More sharing options...
west 0 December 8, 2007 Posted December 8, 2007 · Report post Так на opencores.org давно уже выложено AVR ядро, как там написано, на 100 % совместимое по системе команд, и можно использовать любой компилятор, поддерживающий AVR. Quote Share this post Link to post Share on other sites More sharing options...