Commit Graph

11 Commits

Author SHA1 Message Date
f3a7b565e4 Ввели фазовый сдвиг на 4 такта для сигнала WE, так как в режиме записи не успевали выставляться данные на шину данных и ПЛИС зачитывала нули по всем битам. Это помогло стабилизировать запись. Чтение работает хорошо. Полный цикл записи или чтения бвух байт равен примерно 200нс. 2024-03-19 18:39:41 +03:00
b1038bfc75 Убрали конечный автомат из работы RAM9X8, шина заработала с синхроклоком 100МГц. 2024-03-19 11:40:31 +03:00
99cb989e51 Изменили работу конечного автомата в памяти RAM9X8. 2024-03-19 10:39:11 +03:00
a398de1515 Зафильтровали, используя фазовый сдвиг на один такт, сигналы OE, CE, WE. Перед этим еще дальше сдвинули чтение адреса и проверку OE после спада CE (до 120 нс). Сейчас шина работает стабильно. Так же в этой редакции заработали выходы блока PLL (100МГц и 200МГц). 2024-03-15 16:35:16 +03:00
f6de1e103d В работе модуля RAM9X8 сдвинули на один такт после спада CE проверку адреса. 2024-03-15 13:18:52 +03:00
afea08ff2d Протестировали память. Работает. Сделали новую RAM9X8, где 512 ечеек по 8 бит данных. Избавились от ножек BL. 2024-03-14 18:30:15 +03:00
beef10a15b В описании предыдущего коммита ошибка: память определялась как синхронная.
Увеличили размерность памяти 8х32. Со стороны контроллера ввели ножки nBL. Это выбор байта (от 0 до 3) в ячейки памяти. Добавили описание блока памяти. После синтеза, который стал занимать намного больше времени, блок памяти перестал определятся как синхронная память. Данные по загрузке ПЛИС:
Total logic elements    10,706 / 24,624 ( 43 % )
Total combinational functions  6,603 / 24,624 ( 27 % )
Dedicated logic registers  8,249 / 24,624 ( 33 % )
Total registers    8249
Total pins    25 / 149 ( 17 % )
Total PLLs    1 / 4 ( 25 % )
2024-03-14 11:27:47 +03:00
8c0178953a Изменили блок памяти RAM в соответствие с диаграммой на странице 571 технического описания GD32F403_User_Manual. После синтеза quartus распознал блок как асинхронную память. Вывели на светодиоды синхросигналы из блока PLL для проверки на осциллографе. 2024-03-12 17:54:31 +03:00
71cbaf57d8 Для согласования работы с процессором было принято решение перейти на питание ПЛИС 3.3В. Внесли изменения в проект. 2024-03-12 16:30:45 +03:00
6bb13aec36 Откорректировал блок памяти RAM для возможной работы с двумя устройствами одновременно. Одно из них - внешний контроллер. Вторым будет блок сбора информации для обновления данных. Сейчас в блоке памяти нет взаимной блокировки для двух независимых процессов и, существует возможность записать в одну и ту же ячейку памяти в один и тот же момент времени разные значения. В нашем проекте поскольку дальше будет введено ограничение, которое обяжет писать служебные и критические (напрямую участвующие в алгоритмах работы преобразователем частоты) данные только в определенные заранее известные регистры, такое невозможно. Память на уровне использования программистом будет поделена две области. Ту, в которую можно писать и считать записанное значение и ту, из которой можно будет только считать значения. Со стороны устройства будут использованы для записи только те ячейки, которые процессор будет только читать. Со стороны процессора будут использованы для записи только те ячейки, которые блоки внутри устройства будут только читать. 2024-03-04 18:16:35 +03:00
7ee9a34a42 Начали проект переноса ПО под Альтеру. В проект MainController добавлен блок умножителя частоты и блок памяти на 255 ячеек по 16 бит данных. В память можно записать значение в ячейки и прочитать их оттуда. Преднастроек или каких либо зарезервированных ячеек пока нет. В отличие от проекта для Spartan2 здесь не будет ServiceDataDispatch. Вместо него данные из MCU будут сразу же грузиться в логические блоки (PWM, HWP и другие). 2024-03-04 17:16:43 +03:00