Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Структурная схема Microblaze
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
ataradov
Ни у кого нет подробной структурной схемы ядра майкроблоейза? В частности сильно интересует устройство регистрового файла.

По моим прикидкам у него должно быть или 4 чеcтных порта (3 чтение/1 запись) или я не представляю как реализованны инструкции записи в память.

Может кто-нибудь помочь?
ataradov
Если кому лень смотреть, то объясню что там меня смущает.

У него инструкция сохранения в память может иметь такой вид [rA+rB] <- rD. (все 3 регистра используются на чтение). Но так как есть ковеер, то в этот момент регистр rD может использоваться одной из стадий этого конвеера на запись (во всех остальных инструкциях это именно так).

Как решают данную проблему? Может есть что почитать про то как вообще делают регистровые файлы в FPGA?
CodeWarrior1241
Цитата(Taradov Alexander @ Jun 11 2007, 17:17) *
Ни у кого нет подробной структурной схемы ядра майкроблоейза? В частности сильно интересует устройство регистрового файла.

По моим прикидкам у него должно быть или 4 чеcтных порта (3 чтение/1 запись) или я не представляю как реализованны инструкции записи в память.

Может кто-нибудь помочь?

Другого описания чем, например, в http://www.xilinx.com/ise/embedded/edk91i_...b_ref_guide.pdf Вы вряд ли найдете. Описания работы register file там есть.
Gate
Цитата(Taradov Alexander @ Jun 12 2007, 11:51) *
У него инструкция сохранения в память может иметь такой вид [rA+rB] <- rD. (все 3 регистра используются на чтение). Но так как есть ковеер, то в этот момент регистр rD может использоваться одной из стадий этого конвеера на запись (во всех остальных инструкциях это именно так).

Как решают данную проблему?

Не вдаваясь в реализацию микроблейза (которую я не знаю smile.gif ), замечу лишь, что обычно пайп блокируется, если обнаруживается зависимость команд. Сомнительно также, что там 3R+1W для того, чтобы поддержать одну команду, скорее всего 2R+1W, а извлечение rD делается на следующем такте.
Вот Вам и с х о д н и к и м и к р о б л е й з а, изучайте - http://nukeuploads.com/download/1181674923...4_00_a.rar.html.

В следующий раз, при размещении закрытых исходников и прочего вареза, не делайте аттачей. Не ставьте под удар форум.

Сообщение было отредактировано.
CaPpuCcino
Цитата(Gate @ Jun 12 2007, 19:46) *
Вот Вам исходники м и к р о б л ей з а, изучайте.

вот так подарок! yeah.gif
a14.gif и уважуха
makc
Цитата(CaPpuCcino @ Jun 12 2007, 19:55) *
вот так подарок! yeah.gif
a14.gif и уважуха


Этот подарок можно было давно сделать с использованием того, что есть в закромах. Однако есть большая просьба - не нужно распространять эти средства и добытые с их помощью результаты, т.к. это может вывести заинтересованных людей на форум и поставить форум под удар.
ataradov
Цитата(Gate @ Jun 12 2007, 19:46) *
Вот Вам и с х о д н и к и м и к р о б л е й з а, изучайте -


Спасибо огромное.

Ну и код. Там сам черт ногу сломит. Неужели нельзя описать все включения библиотечных компонентов средствами языка? Пусть даже ориентируясь только на синтезируемость с помощью xst.
gab
Цитата(Taradov Alexander @ Jun 12 2007, 23:52) *
Спасибо огромное.

Ну и код. Там сам черт ногу сломит. Неужели нельзя описать все включения библиотечных компонентов средствами языка? Пусть даже ориентируясь только на синтезируемость с помощью xst.

На VHDL даже "hello world!" выглядит как исходник windows.
Что взять о выкидыша АДЫ и ПАСКАЛЯ?..
Как однажды было сказано (в вольном переводе): VHDL - для имитации, Verilog - для производства.
andrew_b
Цитата(gab @ Jun 15 2007, 02:32) *
На VHDL даже "hello world!" выглядит как исходник windows.

Не болтайте ерундой.
makc
Устное предупреждение: посмотрите на тему и не создавайте bb-offtopic.gif
des00
там стоит 4-х портовая память (2 банка распределенной памяти RAMxD32).
порты записи объеденены в один - получаем порт чтения/записи
+ 2 порта только на чтение. Кста сделав то же самое на блочной памяти можно получить 512 регистров по 32 бита, НО 1 такт латентности на чтение, но тогда ломаеться 3-х тактный конвейер => что то похожее на ниос получаеться smile.gif похоже именно так и сдели в микроблейзе 5 ом (5 ти тактный конвейер).
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.