реклама на сайте
подробности

 
 
6 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> AVR CPU Core, Хочу поделиться
BSACPLD
сообщение Dec 7 2007, 20:27
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 371
Регистрация: 24-07-05
Из: Москва
Пользователь №: 7 056



Здравствуйте!

В свое время искал 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 ( 297.95 килобайт ) Кол-во скачиваний: 682
 
Go to the top of the page
 
+Quote Post
Leka
сообщение Dec 7 2007, 20:44
Сообщение #2


Профессионал
*****

Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118



А что в test_cpu.qar ? У меня ISE, Квартуса нет.
Go to the top of the page
 
+Quote Post
BSACPLD
сообщение Dec 7 2007, 20:59
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 371
Регистрация: 24-07-05
Из: Москва
Пользователь №: 7 056



Цитата(Leka @ Dec 7 2007, 23:44) *
А что в test_cpu.qar ? У меня ISE, Квартуса нет.

rar подойдет?
Прикрепленные файлы
Прикрепленный файл  test_cpu_qar.rar ( 332.22 килобайт ) Кол-во скачиваний: 402
 
Go to the top of the page
 
+Quote Post
Leka
сообщение Dec 7 2007, 21:16
Сообщение #4


Профессионал
*****

Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118



rar подошел beer.gif, но вижу, что без Квартуса все равно не обойтись. crying.gif
Go to the top of the page
 
+Quote Post
BSACPLD
сообщение Dec 7 2007, 21:22
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 371
Регистрация: 24-07-05
Из: Москва
Пользователь №: 7 056



Цитата(Leka @ Dec 8 2007, 00:16) *
rar подошел beer.gif, но вижу, что без Квартуса все равно не обойтись. crying.gif

Если есть хороший инет, можно скачать по ссылке:
ftp://ftp.altera.com/outgoing/release/61_dvd_windows.iso
Go to the top of the page
 
+Quote Post
vetal
сообщение Dec 7 2007, 21:40
Сообщение #6


Гуру
******

Группа: Модераторы
Сообщений: 2 095
Регистрация: 27-08-04
Из: Россия, СПб
Пользователь №: 553



добавлю в свою коллекцию....авось пригодится smile.gif
Go to the top of the page
 
+Quote Post
Leka
сообщение Dec 7 2007, 22:08
Сообщение #7


Профессионал
*****

Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118



Цитата(BSACPLD @ Dec 8 2007, 00:22) *
Если есть хороший инет, можно скачать по ссылке:
ftp://ftp.altera.com/outgoing/release/61_dvd_windows.iso

Web edition позже скачаю, объем меньше.

Цитата(BSACPLD @ Dec 7 2007, 23:27) *
...
I8I16.exe - конвертер файлов из Intel HEX в HEX для инициализации памяти в Quartus.
...

Без Квартуса залить не получится? У меня тоже есть проект с софт-процессором(самопальным), скомпилированная прошивка заливается/обновляется через последовательный порт после конфигурации.
Go to the top of the page
 
+Quote Post
BSACPLD
сообщение Dec 7 2007, 22:57
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 371
Регистрация: 24-07-05
Из: Москва
Пользователь №: 7 056



Цитата(Leka @ Dec 8 2007, 01:08) *
Web edition позже скачаю, объем меньше.
Без Квартуса залить не получится? У меня тоже есть проект с софт-процессором(самопальным), скомпилированная прошивка заливается/обновляется через последовательный порт после конфигурации.

Без Квартуса залить не получиться, потому, что память программ организована как ROM.
Если сделать логику заливки, то можно будет заливать и после конфигурации.
Данный вариант не окончательный, он является лишь частью двух больших проектов.
Я заливаю следующим образом:
1) I8I16.exe
2) Update Memory Initialization File
3) Assembler
4) JTAG
Go to the top of the page
 
+Quote Post
mse
сообщение Dec 8 2007, 09:16
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 709
Регистрация: 3-05-05
Пользователь №: 4 693



Цитата(BSACPLD @ Dec 7 2007, 23:27) *
...
Программируемые адреса прерываний.
...

Тут, конечно, оригинальный АВР курит тихонько в стороне...
Go to the top of the page
 
+Quote Post
Leka
сообщение Dec 8 2007, 10:13
Сообщение #10


Профессионал
*****

Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118



(Скачать Квартус не получилось.) Кстати, почему Циклон, а не Спартан? У Альтеры нет блочной памяти с асинхронным чтением (у Xilinx есть альтернатива - распределенная память), поэтому у софт-процессоров(альтеровских) с коротким конвейером хуже с компактностью и быстродействием.

Сообщение отредактировал Leka - Dec 8 2007, 10:43
Go to the top of the page
 
+Quote Post
dvladim
сообщение Dec 8 2007, 12:20
Сообщение #11


Знающий
****

Группа: Свой
Сообщений: 654
Регистрация: 24-01-07
Из: Воронеж
Пользователь №: 24 737



Пара вопросов возникла:
Есть ли возможность создать программу на "C", и скомпилить под этот процессор? У вас пример на ассемблере. Если реализовано лишь подмножество AVR, то потребуется доводка компилятора.
Или разработка программ планируется только на ассемблере?

И второй.
Процессор написан на AHDL. Это ограничивает его использование Альтерой. Почему небыл выбран Verilog или VHDL?
Go to the top of the page
 
+Quote Post
BSACPLD
сообщение Dec 8 2007, 13:09
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 371
Регистрация: 24-07-05
Из: Москва
Пользователь №: 7 056



Цитата(Leka @ Dec 8 2007, 13:13) *
(Скачать Квартус не получилось.) Кстати, почему Циклон, а не Спартан? У Альтеры нет блочной памяти с асинхронным чтением (у Xilinx есть альтернатива - распределенная память), поэтому у софт-процессоров(альтеровских) с коротким конвейером хуже с компактностью и быстродействием.

Cyclone потому, что этот процессор делался для проекта на Cyclone.
К тому же у Альтеры несколько выше быстродействие, в проекте для которого создавался процессор весь упор был на быстродействие логики (генератор синхроимпульсов), а не процессора.

Цитата(den_realan @ Dec 8 2007, 15:20) *
Пара вопросов возникла:
Есть ли возможность создать программу на "C", и скомпилить под этот процессор? У вас пример на ассемблере. Если реализовано лишь подмножество AVR, то потребуется доводка компилятора.
Или разработка программ планируется только на ассемблере?

И второй.
Процессор написан на AHDL. Это ограничивает его использование Альтерой. Почему небыл выбран Verilog или VHDL?

Что Вы понимаете под подмножеством AVR? Если Вы имеете ввиду, что он совместим по системе команд, то да.
Данный процессор, скорее даже не AVR, а совместимый по командам с AVR, у него своя собственная периферия и несколько отличная организация памяти.
РОН и РВВ не отображаются на область ОЗУ. Сейчас процессор поддерживает не все команды (см. cpu.txt), если можно будет настроить компилятор соответствующим образом, то можно использовать и "C".

AHDL потому, что Verilog я сейчас только изучаю, а AHDL пользуюсь уже давно.
Кстати, а Вы не можете мне посоветовать какую-нибудь толковую книжку по Verilog?
Go to the top of the page
 
+Quote Post
Leka
сообщение Dec 8 2007, 15:51
Сообщение #13


Профессионал
*****

Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118



Цитата(BSACPLD @ Dec 8 2007, 16:09) *
...посоветовать какую-нибудь толковую книжку по 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
Go to the top of the page
 
+Quote Post
BSACPLD
сообщение Dec 8 2007, 16:35
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 371
Регистрация: 24-07-05
Из: Москва
Пользователь №: 7 056



Цитата(Leka @ Dec 8 2007, 18:51) *
На русском - очень мало литературы, для первого знакомства можно:
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.gif
Go to the top of the page
 
+Quote Post
WEST128
сообщение Dec 8 2007, 17:23
Сообщение #15


Местный
***

Группа: Свой
Сообщений: 468
Регистрация: 13-10-06
Из: Россия, Томск
Пользователь №: 21 291



Так на opencores.org давно уже выложено AVR ядро, как там написано, на 100 % совместимое по системе команд, и можно использовать любой компилятор, поддерживающий AVR.
Go to the top of the page
 
+Quote Post

6 страниц V   1 2 3 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th April 2024 - 22:26
Рейтинг@Mail.ru


Страница сгенерированна за 0.01486 секунд с 7
ELECTRONIX ©2004-2016