CaPpuCcino 0 October 20, 2008 Posted October 20, 2008 · Report post ИМХО : little[0:3] = 3'bxxxx little[4] = big[3] little[5] = big[2] little[6] = big[1] little[7] = big[0] спасибо, des00. не мог найти в стандарте прямого указания на это в встандартах. Precision действует именно так. сложность вопроса была в том, по каккому биту будет происходить выравнивание векторов - по нулевому little-а (и тогда присвоение д.б. little[0]=big[3] little[1]=big[2]...) или по нулевому big-а (и тогда по вашей схеме) - чёткого разъяснения я в стандарте не вычитал Quote Share this post Link to post Share on other sites More sharing options...
dvladim 0 October 26, 2008 Posted October 26, 2008 · Report post NCVerilog (какой версии не помню и посмотреть не смогу) ругается на различиющееся направление индексов и не компилируется. Quote Share this post Link to post Share on other sites More sharing options...
CaPpuCcino 0 October 26, 2008 Posted October 26, 2008 · Report post недогляд cadence-a подобные присваивания стандартом не запрещены (раньше mentor на такое тож ругался) Quote Share this post Link to post Share on other sites More sharing options...
dvladim 0 November 1, 2008 Posted November 1, 2008 · Report post Ну как сказать. Я не считаю это неправильным. Это, ИМХО, повышает надежность. Лучше уж самому функцию сделать, чем пропустить в проекте. Quote Share this post Link to post Share on other sites More sharing options...
CaPpuCcino 0 November 1, 2008 Posted November 1, 2008 · Report post Лучше уж самому функцию сделать, чем пропустить в проекте. дело вкуса. но из-зи того, что верилог ещё не научили делать шаблоны функций (тип как параметр), писать свою функцию для пакованного массива каждого типа данных мне не охота. я например на ВХДЛ забил как раз из-за того, что влом писать отдельную функцию сложения для каждого примитивного типа данных (утрирую конечно) Quote Share this post Link to post Share on other sites More sharing options...
picman 0 January 24, 2009 Posted January 24, 2009 · Report post Нахожусь в самом начале изучения ПЛИС. (Altera) Начал изучение с языка AHDL. Что посоветуете: легко ли и надо ли вообще будет переходить потом на VHDL или достаточно будет знаний в AHDL писать не самые сложные проекты? Многие пишут, что в среде разработки (макс или квартус) уже имеются модули всяких там счетчиков , регистров и т.д и т.п. т.е. их не надо писать с нуля самому, собирая из триггеров и логики, вопрос где я могу почитать про ЭТИ готовые функции на русском? Честно говоря читая инфу по языку уже столкнулся с непонятием: с логикой обычной вроде как понимаю, а вот Последовательностная логика SUBDESIGN bur_reg ( clk, load, d[7..0] : INPUT; q[7..0] : OUTPUT; ) VARIABLE ff[7..0] : DFFE; BEGIN ff[].clk = clk; ff[].ena = load; ff[].d = d[]; q[] = ff[].q; END; что такое DFFE и ff[]??? откуда это без объяснений взялось и как это работает? Из моего понимания DFFE это функция триггера, а ff[].хх это сноска на внутренний вывод этой функции... но вот если я найду например какую нить функцию... или мне например надо найти такую, то где мне почитать что вот эти ff[] выполняют в неизвестной найденной мной функции? (с английским в том то и проблема, медленно.) Помогите плз. Quote Share this post Link to post Share on other sites More sharing options...
Stas 3 January 24, 2009 Posted January 24, 2009 · Report post DFFE - триггеры количеством 8, с именем ff. Все вместе - регистр разрядностью 8. Описание триггера можно найти в help в MaxPlus или Quartus в разделе примитивы (primitives). ff[].clk = clk; - подключение к 8 триггерам тактового, ff[].ena - вход разрешения загрузки, ff[].d - вход данных, ff[].q - выходы триггеров. Quote Share this post Link to post Share on other sites More sharing options...
vetal 0 January 24, 2009 Posted January 24, 2009 · Report post 2yagger: Пользоваться поисковыми системами уже не модно? http://www.sm.bmstu.ru/sm5/n4/oba/gl3.html Quote Share this post Link to post Share on other sites More sharing options...
picman 0 January 24, 2009 Posted January 24, 2009 · Report post ммммм, возможно я неправильно выразился. :1111493779: повторюсь: но вот если я найду например какую нить функцию... или мне например надо найти такую, то где мне почитать что вот эти ff[] выполняют в неизвестной найденной мной функции? (с английским в том то и проблема, медленно.) Помогите плз. где мне найти описание СТАНДАРТНЫХ функций альтеры? хотябы основных!!! счетчики, регистры, мультиплексоры.... (на русском языке), прочитав раз на русском, потом легче впитывать описание незнакомых функций на англицком. :rolleyes: Quote Share this post Link to post Share on other sites More sharing options...
vetal 0 January 24, 2009 Posted January 24, 2009 · Report post Описание выводов этих функций находится в справке. Описание работы счетчиков, регистров и пр. находится в справочниках по цифровой технике. В хелпе на все функции находится таблица истинности для понимания которой не требуется знание английского языка. Описание по 10 страниц на каждый элемент вы не найдете, т.к. оно не нужно. Quote Share this post Link to post Share on other sites More sharing options...
SFx 0 January 24, 2009 Posted January 24, 2009 · Report post где мне найти описание СТАНДАРТНЫХ функций альтеры? хотябы основных!!! счетчики, регистры, мультиплексоры.... (на русском языке), прочитав раз на русском, потом легче впитывать описание незнакомых функций на англицком. :rolleyes: Ключевое слово MegaWizard Plugin manager. Там можно выбрать что Вам нужно, счетчик или еще что то. Quartus щас не стоит у меня, но в одной из менюшек есть такой пункт, кажется в tools... там нужно выбрать название фала и тип его для генерации устройства. потом этот файл можно подключить череp INCLUDE. Quote Share this post Link to post Share on other sites More sharing options...
picman 0 January 25, 2009 Posted January 25, 2009 · Report post Спасибо за ответы. Буду учиться. :rolleyes: Quote Share this post Link to post Share on other sites More sharing options...
Фур 0 April 17, 2009 Posted April 17, 2009 · Report post У меня вопрос специфический, но вдруг кто-нибудь знает? Помогите, пожалуйста! Меня интересует литература по объектно-ориентированным расширениям VHDL. Больше всего, конкретно - по SUAVE. Книг таких, по-моему, нет, но хотя бы статьи - желательно с описанием синтаксиса. К примеру, в сети много упоминаний о статьях Peter Asenden, выход на сами статьи - ? То есть, вроде как-то можно заказать. А если просто так? Может, многого хочу, но я просто спрашиваю. То же самое журналы. Например, хотелось бы найти Design and Test of Computers (April-June 1998). Заранее спасибо, если кто отзовется. Quote Share this post Link to post Share on other sites More sharing options...
CaPpuCcino 0 April 18, 2009 Posted April 18, 2009 · Report post хочу поделится одной штукой в Верилоге, которая меня сейчас сильно ухмыльнула (потратил на неё часа 2, отлавливая баг в программе). как вы думаете чему равно выражение: address=(y_coordinate*(picture_width>>2+1)+x_coordinate)*2; при y_coordinate=2, picture_width=16, x_coordinate=3 ? ЗЫ: ответ для самостоятельной проверки - корень квадратный из 196 и главное, что везде использовал оператор сдвига подобающим образом, а тут при числовых коэфициентах никак не мог заметить ошибки, вот что значит экономить на скобках :) Quote Share this post Link to post Share on other sites More sharing options...
sazh 9 April 18, 2009 Posted April 18, 2009 · Report post хочу поделится одной штукой в Верилоге, которая меня сейчас сильно ухмыльнула (потратил на неё часа 2, отлавливая баг в программе). как вы думаете чему равно выражение: address=(y_coordinate*(picture_width>>2+1)+x_coordinate)*2; при y_coordinate=2, picture_width=16, x_coordinate=3 ? ЗЫ: ответ для самостоятельной проверки - корень квадратный из 196 и главное, что везде использовал оператор сдвига подобающим образом, а тут при числовых коэфициентах никак не мог заметить ошибки, вот что значит экономить на скобках :) А железячник наверно бы picture_width>>2 как picture_width[x:2] оформил. И на разрядности бы съэкономил. (Чтоб без предупреждений) Quote Share this post Link to post Share on other sites More sharing options...