Вопросы по теме 'register-transfer-level'

VHDL: назначение элементов из 2D-массива в 1D-массив
У меня есть двумерный массив записей, который я должен выбирать столбец за столбцом для обработки. Я упорядочиваю записи столбцов в массив столбцов примерно так: col_array(0) <= ( td_array(0)(0), td_array(1)(0), td_array(2)(0),...
3774 просмотров
schedule 18.11.2022

постоянное соединение по булавке экземпляра в vhdl'87
У меня есть следующий простой тестовый пример: library ieee; use ieee.std_logic_1164.all; entity top is end top; architecture top of top is component foo port (A : std_logic_vector(1 downto 0)); end component; begin inst : foo port map (A(1)...
629 просмотров
schedule 12.09.2022

Предупреждение VHDL Предупреждение (13024): выходные контакты застряли на VCC или GND на важном выходе
В настоящее время я работаю над проектом, в котором я должен взять высокоуровневое описание алгоритма Фибоначчи (C) и преобразовать его в модуль RTL, написанный на VHDL. Для этого потребуется преобразовать такое высокоуровневое описание в...
5460 просмотров
schedule 25.07.2022

Попытка создать арбитра Round Robin в Verilog
Итак, я пытаюсь заставить свой RR-арбитр выводить правильные значения с помощью тестового стенда, но при правильном переходе состояний вывод всегда устанавливается на значение по умолчанию, 16'h0000 . Любые идеи, почему это значение не изменится?...
4175 просмотров

Ошибка синтеза в операторе CASE в Verilog
Я новичок в Verilog и хотел бы узнать ваше мнение об ошибке, которую я получаю при попытке синтезировать часть моего кода, приведенную ниже: input [31:0] A; reg [31:0] X,Y; reg [15:0] width; input action; always@* begin width= A...
688 просмотров

как сигналы в SoC подключаются к PAD для достижения TOP
Как сигналы/порты периферии в микроконтроллере подключены к PAD?? Скажем, мой SoC имеет «n» сигналов. затем эти сигналы «n» будут подключены к пэду, а затем достигнут верхнего уровня. Как осуществляется это соединение?
1011 просмотров

Как я могу использовать определения Verilog в операторах if-else
У меня есть определение Verilog следующим образом: `define NUM_BANKS 4 и если вы хотите использовать его в следующем коде: if (`NUM_BANKS > 1) do something .. else do something else .. Инструмент Lint жалуется, что это...
2359 просмотров

Как продолжить выполнение скрипта внутри новой оболочки, вызванной из того же скрипта?
Я супер новичок в этой области, поэтому заранее извиняюсь за любую глупость, которую могу сказать! :D Я работаю с RTL-компилятором Cadence и пытаюсь автоматизировать процесс синтеза множества дизайнов разных размеров, расположенных в разных...
620 просмотров

Каков наилучший способ умножения с фиксированной/плавающей запятой?
В общем, есть два метода, как я знаю, что такое умножение с фиксированной/плавающей запятой. Я инженер по оборудованию, такой как Verilog. 1. Односторонний Verilog - умножение с плавающей запятой 2. Другой способ: сдвинуть влево «‹‹», затем...
566 просмотров
schedule 05.05.2024

генерировать внутри генерировать verilog + ошибка рядом с генерировать (veri - 1137)
Написание кода Verilog в течение нескольких дней, и у меня есть один вопрос: «Можем ли мы написать блок генерации внутри блока генерации»? Я пишу RTL примерно так: Where 'n' is a parameter. reg [DATA_WIDTH:0] flops [n-1:0]; generate if (n >...
3737 просмотров

Могу ли я создать новый плагин типа пакета Jfrog Artifactory?
Я хочу хранить модули RTL (в основном файлы VHDL — .vhd) в Artifactory и иметь возможность отслеживать зависимости этих пакетов с помощью Xray и других сервисов Jfrog. У меня уже есть довольно чистый формат «пакета», я просто хочу, чтобы...
303 просмотров

Почему $urandom_range возвращает одно и то же значение?
Я запускаю тестовый стенд с UVM. В одной из задач run_phase() компонента я выполняю fork...join_none , чтобы запустить следующий цикл, который проходит через всю симуляцию: fork forever @(posedge trigger) begin force dut.a =...
3237 просмотров

Неблокирующее выполнение заявлений в Verilog
Я новичок в Verilog, может ли кто-нибудь объяснить мне, как выполняются эти операторы. always@(posedge clock) begin A <= B ^ C; D <= E & F; G <= H | J; K <= G ? ~&{A,D} : ^{A,D} end Насколько я могу судить, сначала...
173 просмотров
schedule 15.11.2023

ОШИБКА: «Проверка «xor_module_b» не найдена. Экземпляр 'x0_1' должен иметь видимую программу проверки.'?
Что это за ошибка «Проверка «xor_module_b» не найдена. Экземпляр 'x0_1' должен иметь видимую программу проверки.'? Я пишу код Verilog в поведенческой модели, используя создание экземпляра модуля. При компиляции получаю ошибку. Часть кода и ошибки...
2551 просмотров

Ошибка неподдерживаемого атрибута
Я написал функцию VHDL vectorize() для преобразования массива std_logic_vector (тип slv_1d_array_type в моем коде) в std_logic_vector. Vivado 2018.2 генерирует эту ошибку [Synth 8-5882] found unsupported attribute ["test_top.vhd":41] в...
163 просмотров
schedule 21.04.2023

Как получить доступ к элементам упакованной структуры по индексу?
У меня есть следующие структуры: typedef struct packed { type1_t info1; type2_t info2; } module_info_registers_t; typedef struct packed { logic [0:0] data1; logic [2:0] data2; logic [11:0] data3; logic [15:0] data4;...
1189 просмотров

Вопрос о том, как работает асинхронный сброс на краю сброса
Я просматриваю некоторые материалы Verilog из «asic-world» и у меня есть вопрос об асинхронном сбросе. Не очень уверен, как это работает, когда сброс находится на положительном фронте. Если учитывать только нарастающий фронт сброса, приведенный ниже...
141 просмотров

Поддерживать порядок подключения на FIRRTL с помощью оператора Cat
Я хочу попросить любую идею для следующей проблемы: я хочу подключить входной порт блока с именем dut , ширина которого составляет 787:0 бит, к байтовому интерфейсу. Я делаю следующее: val io = this.IO(new VerilatorHarnessIO(input_byte_count,...
41 просмотров
schedule 25.07.2022

Оценка операторов присваивания SystemVerilog в моделировании RTL
Я пытаюсь понять, почему покрытие операторов двумя операторами присваивания SystemVerilog может отличаться друг от друга, если выражение условия одинаково для обоих операторов. Учтите следующее: Как показано, выражение условия одинаково для...
50 просмотров

D Генератор последовательности FlipFlop для последовательности 1101011 не дает результатов
Я создал модуль для DFlipFlop в модуле DFF и создал экземпляры 4 из них в модуле seqgen . Я не могу генерировать результаты. Не могли бы вы помочь мне, где я ошибаюсь? module DFF(input d, input rstn, input clk, output reg q); always...
103 просмотров