Methane 0 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба Народ. Нужна книжка, или в общем хоть что-то про то как строить архитектуры. Как делать хорошо и как плохо. К примеру делать шины с Z состоянием - плохо. А как их делать? НУ вот к примеру как по проекту раскидать кучу регистров, висящих на общей ША/ШД? Квартус ругается на Z состояния, и глобальные wor делать не дает. У меня идеи закончились. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 45 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба А попробуйте использовать Avalon. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DmitryR 0 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба Народ. Нужна книжка, или в общем хоть что-то про то как строить архитектуры. Как делать хорошо и как плохо. В закромах смотрели? К примеру делать шины с Z состоянием - плохо. А как их делать? Без Z-состояния. Всегда ваш, К.О. :) НУ вот к примеру как по проекту раскидать кучу регистров, висящих на общей ША/ШД? Квартус ругается на Z состояния, и глобальные wor делать не дает. У меня идеи закончились. Мультиплексорами. Скачайте с Opencores Whishbone Conbus и Conmax и изучите их внутренности. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба Что смотреть в закромах? Что такое КО? Вот у меня ощущения что мультиплексор у меня тормозит больше всего. always_comb begin //always @(sel_tx) begin case (sel_tx) default: begin tx_dv = 'h0; tx_dfr = 'h0; tx_req = 'h0; tx_err = 'h0; tx_desc_l = 'h0; tx_data ={8{8'h8}};//'h0; end SEL_MEMIO: begin tx_dv = pcie_memio.tx_dv; tx_dfr = pcie_memio.tx_dfr; tx_req = pcie_memio.tx_req; tx_err = pcie_memio.tx_err; tx_desc_l = pcie_memio.tx_desc; tx_data = pcie_memio.tx_data; end SEL_INTS: begin tx_dv = pcie_ints.tx_dv; tx_dfr = pcie_ints.tx_dfr; tx_req = pcie_ints.tx_req; tx_err = pcie_ints.tx_err; tx_desc_l = pcie_ints.tx_desc; tx_data = pcie_ints.tx_data; end итд. Так, нормально? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vitan 2 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба В закромах смотрели? Без Z-состояния. Всегда ваш, К.О. :) Мультиплексорами. Скачайте с Opencores Whishbone Conbus и Conmax и изучите их внутренности. +1. Уже с Вами это обсуждали. Похоже, Ваша цель - чтобы форум за Вас и всю работу делал... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба Я глянул на опенкорах. Мне что-то простое. На уровне шины адресс/данные итд. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serhiy_UA 1 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба Народ. Нужна книжка, или в общем хоть что-то про то как строить архитектуры...По ключевым словам Вашего вопроса, не вникая в его суть, т.к. вопрос до конца не понят: Книга Максфилд К. "Проектирование на ПЛИС. Архитектура, средства и методы. Курс молодого бойца", 2007, Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DmitryR 0 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба Я глянул на опенкорах. Мне что-то простое. На уровне шины адресс/данные итд. Этот пост говорит о том, что вы ничего не смотрели из того, что я вам сказал. Потому что Wishbone - это и есть шина адресс/данные. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба Этот пост говорит о том, что вы ничего не смотрели из того, что я вам сказал. Потому что Wishbone - это и есть шина адресс/данные. Тогда я что-то не то смотрел. То что я смотрел было с тегами какие-то фигнй, громадный проект короче. Зарегился на опенкорес. Жду апрувала. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vitan 2 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба Этот пост говорит о том, что вы ничего не смотрели из того, что я вам сказал. Потому что Wishbone - это и есть шина адресс/данные. Потому что глянул. А надо было еще осмыслить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zzzzzzzz 0 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба Так, на всякий случай, вставлю 5 копеек. Прогр. логика да, не "любит" Z-состояние. А при переводе проекта в ASIC это является неким минусом. Ибо реализация на мультиплексорах ГОРАЗДО более громоздкая и тормозная получается. В ASICах шины с третьим состоянием предпочтительнее. Стоит это учитывать в проектах, если есть перспектива реализации не только в ПЛИС. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DmitryR 0 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба Прогр. логика да, не "любит" Z-состояние. Она его не то что не любит, а оно на внутренних буферах FPGA просто не реализовано. В ASICах шины с третьим состоянием предпочтительнее. Я сколько видел библиотек - ни разу не встречал там внутреннего буфера с Z-состоянием. Поэтому думаю, что вы ошибаетесь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба Так, на всякий случай, вставлю 5 копеек. Прогр. логика да, не "любит" Z-состояние. А при переводе проекта в ASIC это является неким минусом. Ибо реализация на мультиплексорах ГОРАЗДО более громоздкая и тормозная получается. В ASICах шины с третьим состоянием предпочтительнее. Стоит это учитывать в проектах, если есть перспектива реализации не только в ПЛИС. В ПЛИС семейства Virtex II (стр. 28) были внутренние шины с третьим состоянием, а потом Xilinx почему то отказался. Например синтезатор Xilinx автоматически переводит третье состояние в мултиплексоры...если логика размещается внутри кристала. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба Потому что глянул. А надо было еще осмыслить. Осмыслил. 8 портов. А если 50? Не подходит. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zzzzzzzz 0 23 декабря, 2010 Опубликовано 23 декабря, 2010 · Жалоба Она его не то что не любит, а оно на внутренних буферах FPGA просто не реализовано. В ПЛИС семейства Virtex II (стр. 28) были внутренние шины с третьим состоянием, а потом Xilinx почему то отказался. Например синтезатор Xilinx автоматически переводит третье состояние в мултиплексоры... Да, не реализовано. Это и есть моё "не любит". Но, варианты "обхода" для последующего ASIC-строительства есть. Отказался, скорее всего, из-за того, что есть зависимость между емкостью шины и мощностью требуемого буфера. Т.е. нет универсальности. А с мультиплексорами несколько более просто по нагрузкам, более просчитываемо. Я сколько видел библиотек - ни разу не встречал там внутреннего буфера с Z-состоянием. Поэтому думаю, что вы ошибаетесь. А я встречал. И сам их "рисовал". Поэтому, ошибаться не могу, пардон. А экономия получается весьма приличная. Отсюда и подход. Правда, многих этот момент мало интересует. Работает как-то, да и ладно. Тоже политика. Оффтопить не буду, завязываю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться