Перейти к содержанию

Помогите С Bidir В Quartus


Cariad

Рекомендуемые сообщения

Доброго всем дня. Есть вопрос по поводу третьего состояния буфера. как бы я не крутил и не переписывал код, при просмотре работы модуля в ModelSim третьего состояния нет, и появляется неопределенное состояние при работе модуля на выход. Книжки, форумы читаю, но это первое знакомство с ПЛИС, до этого только с МК работал, поэтому прошу не бить сильно)). Но очень буду рад тыканью на ошибки.

Ps:то что регистр сам на себя идет....это пока временно, по факту будет регистр на чтение и на запись.

Код модуля:

module data_in_out(
input wire IOR,
input wire IOW,
input wire regIN,
inout DATA,
output reg q);

always @ (negedge IOR)
begin if (regIN==1'b1)
q<=DATA;
end

reg EN_W;
always @*
EN_W=(!IOW&&regIN);

assign DATA= EN_W ?q :1'bZ;

endmodule


Код testbench:

`timescale 1 ns/ 1 ns
module data_in_out_vlg_tst();
// constants										  
// general purpose registers
// test vector input registers
reg treg_DATA;
reg IOR;
reg IOW;
reg regIN;
// wires											  
wire DATA;
wire q;

// assign statements (if any)						  
assign DATA = treg_DATA;
data_in_out i1 (
// port map - connection between master ports and signals/registers  
.DATA(DATA),
.IOR(IOR),
.IOW(IOW),
.q(q),
.regIN(regIN)
);
initial												
begin												  
treg_DATA=1'b0;
IOR=1'b1;												  
IOW=1'b1;
regIN=1'b0;
#50
treg_DATA=1'b0;
IOR=1'b1;												  
IOW=1'b1;
regIN=1'b1;
#10
treg_DATA=1'b1;
IOR=1'b1;												  
IOW=1'b1;
regIN=1'b1;
#10
treg_DATA=1'b1;
IOR=1'b0;												  
IOW=1'b1;
regIN=1'b1;
#50
treg_DATA=1'b0;
IOR=1'b1;												  
IOW=1'b1;
regIN=1'b0;
#50		  
IOR=1'b1;												  
IOW=1'b1;
regIN=1'b1;
#10
IOR=1'b1;												  
IOW=1'b0;
regIN=1'b1;
#50
IOR=1'b1;												  
IOW=1'b1;
regIN=1'b0;
#50
IOR=1'b1;												  
IOW=1'b1;
regIN=1'b1;
#50
IOR=1'b0;												  
IOW=1'b1;
regIN=1'b1;
#200 $finish;		
end													
endmodule

График ModelSim и схема блока прилагается

post-90694-0-68880200-1437422734_thumb.jpg

post-90694-0-14877100-1437422780_thumb.gif

Изменено пользователем admin
Тэг CODE для кого?
Ссылка на комментарий
Поделиться на другие сайты

Неопределённое состояние тут возникает из-за того, что на двунаправленный порт DATA ты одновременно подаёшь сигнал снаружи и изнутри. То есть изнутри у тебя идёт z-состояние, а снаружи 1. Сделай в этот момент снаружи тоже z и получишь третье состояние.

Изменено пользователем Vascom
Ссылка на комментарий
Поделиться на другие сайты

Получается в железе все будет нормально? При приёме получим на выходе DATA состояние z?

Просто как я себе все это представляю при приеме данных tri-state должен находится в состоянии z а на шине будут получаемые данные. А при записи шина находится в состоянии z.

Ссылка на комментарий
Поделиться на другие сайты

Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. 

Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. 

Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств. Подробнее параметры и результаты тестов новой серии PLM по ссылке.

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Тогда спасибо. Дома попробую переписать testbench. Как то я не подумал что нужно работу самой шины тоже симулировать. Вечером напишу про результат.

Ссылка на комментарий
Поделиться на другие сайты

Литиевые батарейки и аккумуляторы от мирового лидера  EVE в Компэл

Компания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. Недавно EVE была объявлена поставщиком новых аккумуляторных элементов круглого формата для электрических моделей «нового класса» компании BMW.

Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...