реклама на сайте
подробности

 
 
> Сброс SPI (Verilog), Начальное состояние триггеров
estel23
сообщение Sep 9 2015, 15:23
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 76
Регистрация: 30-09-13
Пользователь №: 78 536



Добрый день уважаемые, хочу поделиться моей проблемой.

Имеется SPI Slave, вот код:

Код
module SPIslave(
    input wire RESET,
    input wire CSIN,
    input wire SCKIN,
    input wire MOSIIN,
    output wire MISOOUT,
    output reg [15:0] DATAOUT,
    );

reg [15:0] data;
reg [4:0] count;

assign MISOOUT = data[15];

always @ (negedge SCKIN)
    if (RESET & ~CSIN)
        data <= { data[14:0], MOSIIN };
        

always @ (posedge SCKIN)
    if (~RESET | CSIN)
        count <= 5'b00000;
    else
        count <= count + 1'b1;

always @ (count[4])
    DATAOUT <= data

endmodule


Вся проблема в RESETe. Хочу обходиться без лишних ног, ибо на CPLD итак много всего.
Если уберу из кода RESET, то счетчик начинает считать не с начала условий, под которые он подписан.
Т.е. Подаю клок, потом подаю CSIN = 1 (до этого она в нуле). Далее отпускаю CSIN = 0, но счетчик не начинает считать. И только по прошествии 7 - 8 клоков оживает.
Я думал что при включении питания CPLD выставляет все в "0", но получше глянув в Post-моделировании заметил что не все в нуле.

Мож я чет не понимаю? На Verilogе сижу не долго и прошу помощи у экспертов.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Genadi Zawidowsk...
сообщение Sep 24 2015, 10:00
Сообщение #2


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



OE буфера не должен ничем стробироваться, просто управляется от чипселекта.
Не понял, а зачем Вам счетчик? Задним фронтом CE защелкиваете на паралельный выход то, что накопилось в сдвиговом регистре за последние 16 тактос CLK. Или у Вашей CPLD на все только один единственный клок?

Сообщение отредактировал Genadi Zawidowski - Sep 24 2015, 10:03
Go to the top of the page
 
+Quote Post
estel23
сообщение Sep 24 2015, 10:07
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 76
Регистрация: 30-09-13
Пользователь №: 78 536



Цитата(Genadi Zawidowski @ Sep 24 2015, 14:00) *
OE буфера не должен ничем стробироваться, просто управляется от чипселекта.
Не понял, а зачем Вам счетчик? Задним фронтом CE защелкиваете на паралельный выход то, что накопилось в сдвиговом регистре за последние 16 тактос CLK. Или у Вашей CPLD на все только один единственный клок?


У моей CPLD на все один единственный клок. И тот включается когда передаются данные. А счетчик нужет для того, чтобы из разных регистров CPLD в разные биты записывать и считывать инфу.
А буфер должен выключаться только при наступлении 8 бита, т.к. первые 8 бит - адрес регистра и указатель записи/считывания.
Но я это все уже сделал, и даже работает. Остается вопрос первоначального включения, инициализации CPLD и АЦП, которая не может поднять MISO.

Кстати тип АЦП: EV10AQ190A

Сообщение отредактировал estel23 - Sep 24 2015, 10:13
Go to the top of the page
 
+Quote Post
EvgenyNik
сообщение Sep 24 2015, 13:53
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 597
Регистрация: 24-05-06
Из: г. Чебоксары
Пользователь №: 17 402



Цитата(estel23 @ Sep 24 2015, 13:07) *
АЦП, которая не может поднять MISO. Кстати тип АЦП: EV10AQ190A
А Вы подтянули MISO к питанию как сказано в п. 6.6 даташита?


--------------------
Почему разработчики систем повышенной надёжности плохо справляются с простыми проектами? :)
Go to the top of the page
 
+Quote Post
estel23
сообщение Sep 24 2015, 14:28
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 76
Регистрация: 30-09-13
Пользователь №: 78 536



Цитата(EvgenyNik @ Sep 24 2015, 17:53) *
А Вы подтянули MISO к питанию как сказано в п. 6.6 даташита?


Да, конечно. Дело в том что плата не наша, она куплена. И после некоторых модификаций платы нужно воссоздать управление + дальнейшая доработка кода под наши модификации.

Сообщение отредактировал estel23 - Sep 24 2015, 14:29
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- estel23   Сброс SPI (Verilog)   Sep 9 2015, 15:23
- - EvgenyNik   Мастер-устройство работать с CS будет по словам (т...   Sep 9 2015, 15:44
|- - estel23   Цитата(EvgenyNik @ Sep 9 2015, 19:44) Мас...   Sep 9 2015, 15:49
- - EvgenyNik   Выведите состояние регистра на внешние пины (как с...   Sep 9 2015, 19:12
- - Golikov A.   Сдается мне что дело не в ресете.... конечно при н...   Sep 10 2015, 07:07
|- - estel23   Цитата(Golikov A. @ Sep 10 2015, 11:07) С...   Sep 10 2015, 07:42
|- - EvgenyNik   Цитата(estel23 @ Sep 10 2015, 10:42) ТАм ...   Sep 10 2015, 07:55
|- - estel23   Цитата(EvgenyNik @ Sep 10 2015, 11:55) Ни...   Sep 10 2015, 08:05
- - Golikov A.   Множество SPI slave режимов реализуются при асинхр...   Sep 10 2015, 08:14
- - EvgenyNik   Вариант: выкинуть SC18IS602IPW, подставив вместо н...   Sep 10 2015, 10:12
|- - estel23   Цитата(EvgenyNik @ Sep 10 2015, 14:12) Ва...   Sep 10 2015, 11:24
- - Golikov A.   в CPLD асинхронный сброс возможен? Кодalways @ ...   Sep 10 2015, 12:26
|- - estel23   Цитата(Golikov A. @ Sep 10 2015, 16:26) в...   Sep 23 2015, 13:37
- - Golikov A.   ЦитатаPLD работает когда начальная установка MISO ...   Sep 23 2015, 16:50
|- - estel23   Вообщем не могу правильно передавать биты во время...   Sep 24 2015, 08:27
- - Golikov A.   ЦитатаПоложение MISO важно, т.к. если я его оставл...   Sep 24 2015, 09:30
|- - estel23   Цитата(Golikov A. @ Sep 24 2015, 13:30) M...   Sep 24 2015, 09:44
- - Genadi Zawidowski   Выход слейва - MISO - в каждом слейве дожден прохо...   Sep 24 2015, 09:53
|- - estel23   Цитата(Genadi Zawidowski @ Sep 24 2015, 13...   Sep 24 2015, 09:55
- - Golikov A.   есть вещи которые я не понимаю и не смогу понять н...   Sep 24 2015, 19:49
|- - estel23   Цитата(Golikov A. @ Sep 24 2015, 23:49) е...   Sep 25 2015, 06:30
- - Golikov A.   Ох.... Ну если вы схемотехник то вам должно быть з...   Sep 25 2015, 07:03
|- - estel23   Цитата(Golikov A. @ Sep 25 2015, 11:03) к...   Sep 25 2015, 07:43
- - Golikov A.   ЦитатаЯ согласен что мой код кривоват, но он по кр...   Sep 25 2015, 09:00
- - estel23   Цитата(Golikov A. @ Sep 25 2015, 13:00) т...   Sep 25 2015, 09:25


Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 00:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.0141 секунд с 7
ELECTRONIX ©2004-2016