-
digitalinvitro
-
Автор темы
-
Не в сети
-
Давно я тут
-
-
Сообщений: 100
-
Спасибо получено: 8
-
-
-
|
Можно ли использовать UFM Block по включению питания как есть, без инициализации Address Register? Будет ли он сброшен в "ноль" по включению питания. Линии асинхронного сброса он не имеет, а городить цикл его загрузки по сбросу "жаба давит" на дополнительный расход аппаратуры.
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
umarsohod
-
-
Не в сети
-
Администрация форума
-
-
Сообщений: 816
-
Спасибо получено: 168
-
-
|
У меня без инициализации не получилось , может что не так делал.
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
digitalinvitro
-
Автор темы
-
Не в сети
-
Давно я тут
-
-
Сообщений: 100
-
Спасибо получено: 8
-
-
-
|
Николай, Юрий. Хотел вас спросить, я тут проверил одну идею с UFM блоком, для того что бы упростить аппаратуру вывода из флеш данных, смысл в том что бы поменять порядок следования данных таким образом что бы инкремент адреса работал постоянно, и на 16 сдвигов (можно 15 в принципе) приходилась бы одна запись в регистр данных UFM. Может быть я не первый кому приходила такая идея в голову?
Что интересно где то на границе блока происходит смещение - совершенно не понятно почему и вывод сбивается, при переходе в другой блок вывод дальше происходит как надо. Если имеет смысл могу выложить схему и проект.
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
umarsohod
-
-
Не в сети
-
Администрация форума
-
-
Сообщений: 816
-
Спасибо получено: 168
-
-
|
Только использовать можно будет каждое 16-е слово т.е. обьем будет в 16 раз меньше.
Или иплользовать какую-то мудреную логику при переходе адреса через "0".
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
digitalinvitro
-
Автор темы
-
Не в сети
-
Давно я тут
-
-
Сообщений: 100
-
Спасибо получено: 8
-
-
-
|
Почему?! Все нормально через ноль регистр адреса на постоянном инкременте перебирается идеально. Где то я намудрил в отладочном модуле и при определенной последовательности данных он выкидывает данные из другой ячейки, совершенно не понятно пока, но отладить тяжело - я для наглядности поставил подавитель дребезга и по кнопке просто шагаю вдоль UFM - при симуляции чертова уйма времени улетает на счетчик подавления дребезга.
Все получается Юрий. Вопрос только как поймать бажок. :)
я наверное сумбурно объяснил, вот схемка, честно говоря с верилогом она скорее всего расходиться но смысл должен улавливаться.
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
umarsohod
-
-
Не в сети
-
Администрация форума
-
-
Сообщений: 816
-
Спасибо получено: 168
-
-
|
Через ноль то он проходит, только будет читаться то-же самое слово , что и в прошлый раз, а
хотелось-бы следующее.
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
digitalinvitro
-
Автор темы
-
Не в сети
-
Давно я тут
-
-
Сообщений: 100
-
Спасибо получено: 8
-
-
-
|
umarsohod пишет: Через ноль то он проходит, только будет читаться то-же самое слово , что и в прошлый раз, а
хотелось-бы следующее.
Юрий я не совсем понимаю почему, но я через ноль абсолютно точно проезжаю на готовом устройстве если представить что порядок следования от 1 до 1FF, то считываю при переходе через ноль правильные значения а именно 1FF затем переход через ноль и 0010. Чтение происходит по текущему адресу в регистре адреса UFM, т.е. если на DRSHIFT логический ноль а он там бывает каждый 16 такт, то в счетчике адреса UFM все время новый адрес.
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
umarsohod
-
-
Не в сети
-
Администрация форума
-
-
Сообщений: 816
-
Спасибо получено: 168
-
-
|
Возможно,мы чтото по разному понимаем, но если вам не трудно, пришлите какой нибудь простенький вариант
вашего проекта, а я попробую его откампилировать и сообщу вм свои соображения.
Мой адрес u@marsohod.org
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
digitalinvitro
-
Автор темы
-
Не в сети
-
Давно я тут
-
-
Сообщений: 100
-
Спасибо получено: 8
-
-
-
|
Юрий я сбросил по почте код, там много лишнего - выдалась минутка обрезал все тестовые модули с кнопками и сделал просто вывод последовательно из UFM вот скриншот с симулятора там где переход счетчика регистра адреса UFM через 0 все как и положено
схема теперь выглядит так:
код выглядит так: reg [15:0]data;
reg [15:0]OUTR;
reg EndCyc, As;
wire [16:0]preload = {9'b111111111,~As,7'b1111110};
ufm ufm0(
.arclk(osc),
.arclkena(1'b1),
.ardin(1'b0),
.arshft(As),
.drclkena(1'b1),
.drclk(osc),
.drdin(1'b0),
.drshft(EndCyc),
.erase(1'b0),
.oscena(1'b1),
.program(1'b0),
.busy(busy),
.drdout(serial_data),
.osc(osc),
.rtpbusy(rtpbusy)
);
wire [16:0]SD = (EndCyc==1'b0)? preload[16:0] : {data[15:0],serial_data};
assign oscled = (chkey)? OUTR[15:8] : OUTR[7:0];
always@(posedge osc or negedge reset) begin
if(!reset) begin
data <= 16'hFFFF;
EndCyc <= 1'b0;
As <= 1'b1;
end
else begin
{EndCyc, data[15:0]} <= SD[16:0];
if(As) As <= data[15];
if(!EndCyc) OUTR <= data;
end
end
Заполнение памяти флеша в UFM
mem.png
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
digitalinvitro
-
Автор темы
-
Не в сети
-
Давно я тут
-
-
Сообщений: 100
-
Спасибо получено: 8
-
-
-
|
Заполнение памяти флеша UFM (что то форум подглючивает не загрузился рисунок)
mem.png
мда проблема что то рисунок загрузить
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
Время создания страницы: 0.220 секунд