-
Постов
12 216 -
Зарегистрирован
Весь контент ViKo
-
Вопрос про Quartus.
ViKo ответил Zugus тема в Языки проектирования на ПЛИС (FPGA)
А я - наоборот. И когда в реестр лезут править то, что можно в меню найти - за это тоже дал бы мышом по башке. -
corner case - неловкое положение, затруднение. Надо по контексту смотреть. Верификация - когда я что-то записал в память, потом прочитал, сравнил и убедился, что записанное верно. "Хитрый" тест - когда я в память записал нечто специальное, "бегающую единицу", например, потом прочитал, сравнил, и убедился, что память работает. Примерно так понимаю я, на истину не претендую. для des00 Кто-то обещал описать свою "битву" с Aprox в своем блоге, во всех подробностях, по-шагам...
-
Вопрос про Quartus.
ViKo ответил Zugus тема в Языки проектирования на ПЛИС (FPGA)
Очень даже правильно. Можно, конечно, и через ... файл, но лучше так: (* chip_pin = "55" *) input CLKIN, (* chip_pin = "70,69,68,67,65,64,63,62,60,59,42,43,44,46,47,48,49,51" *) output [0:17] MA, (* chip_pin = "72" *) output MS_n, (* chip_pin = "89" *) output MWR_n, (* chip_pin = "90" *) output MOE_n, (* chip_pin = "91" *) output MUB_n, (* chip_pin = "92" *) output MLB_n, (* chip_pin = "102,101,100,99,98,97,96,95,87,86,83,82,81,80,79,78" *) inout [0:15] MD, Скобки круглые надо ставить, а не слэши. -
Маломощный БП на основе контроллера
ViKo ответил sergey379 тема в В помощь начинающему
На сайте Microchip, например, AN958. Знаю, что были и другие, но по-быстрому не нашел. -
Actel SmartFusion
ViKo ответил LV26 тема в Работаем с ПЛИС, области применения, выбор
Я так и делаю :) И пока на SmartFusion переходить не собираюсь. Но внимание обратил. -
Возможно, помогло бы приведение типов (casting), но в Quartus это не поддерживается.
-
По совету des00 "поразвлекался" с файлом и настройками для SM. module TestEnum (input CLK, input IN, output bit[2:0] OUT, output bit TEST); parameter IDLE_b = 0, RECEIVE_b = 1, PARITY_b = 2; enum bit[2:0] { IDLE = 3'h1 << IDLE_b, RECEIVE = 3'h1 << RECEIVE_b, PARITY = 3'h1 << PARITY_b } state; always @(posedge CLK) begin case (state) IDLE: if (IN) state <= IDLE; else state <= RECEIVE; RECEIVE: state <= PARITY; PARITY: state <= IDLE; default: state <= IDLE; endcase end assign OUT = state; // assign TEST = state[IDLE_b]; assign TEST = state; endmodule Получил сообщение, что в последней строке урезается state, выход TEST берется с state[0]. SM имеется. Quartus 9.0. Если предпоследнюю строку раскомментировать, и закомментировать последнюю, то варнинг не пишется, SM не создается, а схема, вроде, одинаковая. Похоже, Quartus не хочет манипулировать отдельными битами SM. Что 9.0, что 9.1.
-
Пока обнаружил существенную нехватку запятых :) Если бы файл можно было редактировать, было бы проще указать на недостатки. Наверное, testbench - это не совсем верификация. Верификация - удостовериться в том, что там что-то правильно. А тест может быть более "хитрым". И это - имплемент... так сразу и не поймешь... 1. implement ['ImplImqnt] (Mueller En-Ru) 1. n. 1. n. орудие; инструмент, прибор; обыкн. pl. принадлежности, утварь; инвентарь syn.: instrument, tool, utensil 2. v. 1) выполнять, осуществлять; обеспечивать выполнение; to implement a decision - проводить постановление в жизнь 2) снабжать инструментами syn.: further Еще добавлю: exhaust - истощать (так точнее, чем "упрощать")
-
Так может, именно в этом и заключается "баг" у barabek, когда в Q9.0 заданы установки кодировать One-Hot, а в Q9.1 нет? Нет бита, вот и обрабатывать нечего (и выдавать в подобных упоминаемых выше случаях)? А описывать состояния - parameter... (еще есть `define, но не рекомендуется)
-
самый малопотребляющий МК
ViKo ответил FalloutMan тема в В помощь начинающему
Я имел в виду не потребление "аналогичное", а принципы уменьшения потребления - поработал, и спать. На маленьком PIC-е исследовал возможность продлить время работы от батарейки: компаратор включен - жрет ток, сторожевой таймер включен - тоже ..., подтягивающие резисторы - ... тоже лучше внешние поставить, да побольше сопротивлением, утечки входов - ... В-общем, зависит от многих факторов. -
Несколько вопросов по lpc176x
ViKo ответил vallav тема в ARM, 32bit
Так я что, я не против :) Я и сам присматриваюсь к ним. У STM32 тоже есть, только перемычки BOOT переставить... И не стираемый, наверное. 128-битовый? И за счет этого могут работать на частоте до 120 MHz? Это хорошо. Но, наверное, если не скакать по коду. -
для des00 Ваш код Quartus скушал (и без assign TEST, и с ним), однако State Machine Viewer говорит, что нет SM.
-
самый малопотребляющий МК
ViKo ответил FalloutMan тема в В помощь начинающему
Когда MSP430 продвигался в массы, малое потребление указывалось как главное его достоинство. Типа "спит, проснулся, быстро отработал свое, и снова спать". На PIC тоже можно организовать подобное. На любом современном микроконтроллере - аналогично. Потребление зависит от напряжения питания, рабочей частоты, используемой периферии, алгоритма работы... -
Продолжим? Создал код: module TestEnum (input wire CLK, output bit[2:0] OUT, output bit TEST); parameter IDLE_b = 0, RECEIVE_b = 1, PARITY_b = 2; enum bit[2:0] { IDLE = 3'h1<<IDLE_b, RECEIVE = 3'h1<<RECEIVE_b, PARITY = 3'h1<<PARITY_b } state, next; always @(posedge CLK) begin case(state) 01: state = RECEIVE; 02: state = PARITY; 03: state = IDLE; default: state = IDLE; endcase end assign OUT = state; // assign TEST = state[1]; endmodule В таком виде компилируется без видимых осложнений. Как только убираю комментарий в предпоследней строке, Quartus 9.0 (no SP) изобретает "страшную" RTL-схему, выходы садит на 0, ЛЭ не использует совсем, и говорит, что State Machine нет.
-
Actel SmartFusion
ViKo ответил LV26 тема в Работаем с ПЛИС, области применения, выбор
Меня привлекает наличие процессора Cortex-M3 и flash-памяти для кода. До этого встроенные процессоры типа NIOS требовали или внешней памяти (а значит, ноги ПЛИС отнимали, не говоря про остальное) или внутренней (которую жалко тратить на ПЗУ). А АЦП можно (и нужно) внешние присобачить. В-общем, интерес испытываю. -
Кажется, я был не прав с самого начала :) Вернее, с поста #5 Ухожу листать стандарт и насиловать Quartus.
-
IEEE Std 1800-2009 SystemVerilog (на ftp имеется, циферками обозван, точнее не помню), раздел 6.19. Обращение к переменным перечисляемого типа в разделе 6.19.4, как раз перед методами. Не к элементу перечисления, я неправильно выразился, извиняюсь :) Это не массив, а список значений переменных state и nextstate. А к конкретному биту - как-то так: status[2][0], наверное... Исправляюсь - это вектор, Вы правы. Принимающий значения IDLE, RECEIVE, PARITY, каждое из которых 3-битовое.
-
Несколько вопросов по lpc176x
ViKo ответил vallav тема в ARM, 32bit
Творческие люди работают в NXP - и GPIO на отдельную шину посадили, и с загрузчиком "извратились" :) Наверное, и еще найдется особенностей. Я работаю с STM32, так как-то более "классически" все сделано. Но в будущем подумываю переметнуться на NXP. -
Не к биту, а к элементу перечисления номер [2], каждый из которых - 3-битовый bit[2:0].
-
Несколько вопросов по lpc176x
ViKo ответил vallav тема в ARM, 32bit
Т.е., загрузчик по данной ножке определяет, что ему делать - работать самому или перейти на пользовательскую программу? -
Несколько вопросов по lpc176x
ViKo ответил vallav тема в ARM, 32bit
Цитирую мануал: Т.е. загрузчик - это если указанную ножку держать в нуле при сбросе. Без этого - обычный старт - startup, main... -
Джампер по питанию
ViKo ответил Daedal07 тема в Работаем с ПЛИС, области применения, выбор
Да каком-таком "софте"? :) Несколько десятков строк C. Я программировал такие, я знаю :) Тоже выбирал, то ли компаратор тупой поставить, то ли более интеллектуальное устройство применить. Остановился на втором. Там и сторожевой таймер имеется. P.S. А в компараторах ничего отвалиться не может? -
AT91SAM7 SPI не работает как надо
ViKo ответил megarazor тема в ARM, 32bit
По симптомам - две ноги (соседних обычно) сцепились друг с другом при пайке. -
Actel SmartFusion
ViKo ответил LV26 тема в Работаем с ПЛИС, области применения, выбор
Т.е. никогда! Никогда не будет в одной ПЛИС быстрой логики и быстрых АЦП. Несовместимые вещи, я думаю. Так же, впрочем, как и точных АЦП или ЦАП не будет ни в ПЛИС, ни в микроконтроллере. -
Джампер по питанию
ViKo ответил Daedal07 тема в Работаем с ПЛИС, области применения, выбор
Проще уж на PIC-е 6-ногом замутить. Рекомендую. Там и компараторы бывают, и АЦП. Полный контроль за источниками питания.