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

А чем сброс от PLL не нравится, частоту в любом случае заводите.

В том то и дело - не завожу.

Использую встроенный генератор.

Похоже, что CPLD Лэттиса в этом случае уникальны :)

Поделиться сообщением


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

А чем сброс от PLL не нравится, частоту в любом случае заводите.

Так сам PLL требует сброса!!!

Установкой атрибута играться?.. Синтезатор поймет? Кто проверял, мужики?

Поделиться сообщением


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

Да, PLL при слёте сигнала LOCK рекомендуется принудительно сбрасывать, чтобы она правильно перезапустилась.

 

GSR, как я понимаю, это просто сеть соединений, которая оптимально подходит для разводки глобальных распределённых сигналов.

Поэтому эта сеть (в виде примитива GSR) имеет только вход, и не имеет выхода.

 

Оставил её подключение в настройках чисто по умолчанию, автомат сам подключает её к сигналу с наибольшим fanout, и чаще всего это как раз RESET :)

 

Я пока просто на макетке завёл сигнал сброса с RC цепочки на ПЛИС, а потом в готовом устройстве, как уже подсказывали, просто сделаю небольшой счётчик или регистр сдвига, который после подачи питания будет отсчитывать от нуля до некоторого значения, удерживая при этом линию RESET в активном состоянии.

Поделиться сообщением


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

Error: Module PUR is not a valid primitive....

PUR library element description in the FPGA Libraries Help system. Кто знает, что это за библиотека?

 

How to Use the Global Set/Reset (GSR) Signal в поисковике набрать...

HowtouseGSRPURandTSALL.PDF

Поделиться сообщением


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

PUR это Power Up Reset - начальный сброс при подаче питания.

Только для симуляции.

Эффект - на MachXO2, к примеру, все регистры после подачи питания сброшены в ноль.

Поделиться сообщением


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

Только для симуляции.

 

Мне интересно по iCE40 как обеспечить "на железе" сигнал Сброса для своих нужд?

Полные примеры мне не известны... Компилятор iceCube2 требует библиотеку для применения конструкций, указанных в документе (How to Use the Global Set/Reset (GSR) Signal) . Кто подскажет. Симуляция мне не интересна...

 

Поделиться сообщением


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

Мне интересно по iCE40 как обеспечить "на железе" сигнал Сброса для своих нужд?

Полные примеры мне не известны... Компилятор iceCube2 требует библиотеку для применения конструкций, указанных в документе (How to Use the Global Set/Reset (GSR) Signal) . Кто подскажет. Симуляция мне не интересна...

Ну я сам только месяц как изучаю ПЛИС, так что не сильно пока ещё "в теме".

Но, как уже упоминал, есть два простых способа.

 

1.Внешний сброс. То есть выделяете пин, подключаете к нему подтягивающий к VCC резистор (PULLUP, обычно есть встроенные в чип), а снаружи вешаете конденсатор на 0.1-1 мкФ, в зависимости от нужной длительности сброса. И ещё не забудьте включить в ПЛИС триггер шмитта на этом пине.

Получается сигнал Reset с активным низким уровнем.

 

2. Внутренний сброс на регистре.

Например:

module    reset_gen    (
            input CLK,
            output RESET
            );
                    
    reg [2:0] shift;
    
    always @(posedge CLK) shift <= {shift[1:0], 1'b1};
    
    assign RESET = ~&shift;
    
endmodule

Первые несколько тактов после подачи питания выход RESET будет удерживаться в активном состоянии.

Поделиться сообщением


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

Это из iCE40FamilyHandbook

h_1450260160_8595513_0d414175e9.jpg

Все красиво, ...но пока не доступно. Ткните носом!

Поделиться сообщением


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

Ну что тут недоступного-то?

Это схема внутреннего сброса ПЛИС перед загрузкой конфигурации.

 

Вам этот сброс не нужен, да он и не доступен для синтеза.

 

Сделайте, как я посоветовал выше.

Либо внешний пин RESET, либо внутренняя генерация.

 

Не вижу проблемы.

Поделиться сообщением


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

Ну что тут недоступного-то?

Это схема внутреннего сброса ПЛИС перед загрузкой конфигурации.

 

Вам этот сброс не нужен, да он и не доступен для синтеза.

 

Сделайте, как я посоветовал выше.

Либо внешний пин RESET, либо внутренняя генерация.

 

Не вижу проблемы.

Вчера уже реализовал. Работает нормально... Если считать 30 включений достаточно.

 

Тут просто хотелось штатного(зарезервированного хелезом) решения

 

Поделиться сообщением


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

Кстати, народ!

Кто разобрался с конфигурированием "самого себя" в MachXO2 ?   Якобы для MachXO3 это уже продумано из внутренней Flash. 

А вот с О2 , да еще по инициативе внутреннего проца MICO8\MICO32 и, как это возможно? Ведь в CPLD записи предшествует стирание. А это уничтожение внутренней архитектуры...

Предполагаю, что стирание  делается быстро и пользователю остается только длительная запись с внешней FLASH по SPI. 

Тревожат хотелки начальства иметь умную крохотулю, которая была бы способна менять себя по внешнему требованию(предварительно подготовив во внешней FLASH файл нового конфигурирования).

Что скажете?

Поделиться сообщением


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

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

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

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

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

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

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

×
×
  • Создать...