Актуальность и цель иследования
Анализ среды разработки
Исходные временные диаграммы двухканального режима ввода/вывода
Алгоритмы функционирования модуля Ведущий с двухканальным режимом
Алгоритмы работы модуля Ведущий
Алгоритмы функционирования модуля Ведомый с двухканальным режимом
Алгоритмы функционирования модуля Ведомый с двухканальным режимом
Алгоритмы функционирования модуля Ведомый с двухканальным режимом
Моделирование двухканального режима работы модуля Ведущий
Моделирование двухканального режима работы модуля Ведущий
Моделирование двухканального режима работы модуля Ведущий
Тестирование двухканального режима работы модуля Ведомый
Тестирование двухканального режима работы модуля Ведомый
Тестирование двухканального режима работы модуля Ведомый
Результаты синтеза и трассировки модуля Ведущий
Результаты синтеза и трассировки модуля Ведущий
Демонстрация программного продукта
5.84M
Категория: ИнформатикаИнформатика

Разработка программного модуля 2-х канального ввода-вывода по SPI для флеш-памяти

1.

МИНОБРНАУКИ РОССИИ
Федеральное государственное бюджетное образовательное учреждение
высшего образования
«МИРЭА – Российский технологический университет»
РТУ МИРЭА
Институт кибербезопасности и цифровых технологий
Разработка программных решений и системного программирования
ВКР бакалавра на тему:
«Разработка программного модуля 2-х канального ввода-вывода по
последовательному периферийному интерфейсу для микросхемы флеш памяти»
БСБО-18-21: Колобанов Д.А.
Научный руководитель: к.т.н., доцент кафедры ИКБ Аминев Д.А.
Направление: 09.02.03 «Информационные системы и технологии»
1

2. Актуальность и цель иследования

Актуальность:
В условиях постоянного роста требований к скорости и
эффективности передачи данных в современных электронных
системах, двухканальный SPI становится важным
инструментом для разработчиков
Цели работы:
- Изучить основные принципы
работы последовательного
периферийного интерфейса
(SPI) и его архитектуру.
- Разработать схему и
выполнить программную
реализацию управления
двухканальным SPI.
- Провести тестирование
разработанного
двухканального SPIинтерфейса на
работоспособность и
производительность.
Основные задачи:
- Изучить литературные источники
и статьи, описывающие работу
интерфейса SPI и его применения в
современных системах.
- Разработать блок-схемы и
описания основных модулей,
необходимых для реализации
двухканального SPI.
- Написать программное
обеспечение для управления
двумя SPI-каналами, включая
функции и процедуры для обмена
данными.
- Оформить графические
материалы для более наглядного
представления результатов
работы.

3. Анализ среды разработки

XILINX ISE
Анализ среды разработки
Интерфейс программы VIVADO 2017.2
VIVADO 2017.2

4. Исходные временные диаграммы двухканального режима ввода/вывода

Алгоритмы функционирования модуля Ведущий с
двухканальным режимом
Схема работы модуля Ведущий
Принцип
подключения
между SPI
Ведущий и SPI
Ведомые
Схема взаимодействия регистров, шин и линий
данных модуля

5. Алгоритмы функционирования модуля Ведущий с двухканальным режимом

Алгоритмы работы модуля Ведущий
Ведущий модуль при чтении данных Ведущий модуль при отправке
с внешней шины
данных в шину SPI
Ведущий модуль при чтении
данных по SPI

6. Алгоритмы работы модуля Ведущий

Алгоритмы функционирования модуля Ведомый с
двухканальным режимом
Алгоритм ветки чтения номера команды от Ведущего
Схема работы модуля Ведомый

7. Алгоритмы функционирования модуля Ведомый с двухканальным режимом

Выполнение «02h» от Ведущего
Выполнение «03h» от Ведущего
Выполнение «3Bh» от Ведущего

8. Алгоритмы функционирования модуля Ведомый с двухканальным режимом

Выполнение
«ВВh» от
Ведущего
Выполнение
«92h» от
Ведущего

9. Алгоритмы функционирования модуля Ведомый с двухканальным режимом

Моделирование двухканального режима работы
модуля Ведущий
Результат моделирования операции «Быстрое чтение» модуля Ведущий
Тестовое окружение генерирует внешний запрос из инструкции и адреса памяти модуля Ведомый, а также ответных данных,
полученный из ячейки памяти. Для компактного представления временных диаграмм объём данных и размер адреса ячейки были
уменьшены до 8 бит, однако модуль можно легко сконфигурировать для передачи 3-байтовых адресов и наборов данных.

10. Моделирование двухканального режима работы модуля Ведущий

Результат моделирования операции «Быстрый ввод/вывод» модуля Ведущий

11. Моделирование двухканального режима работы модуля Ведущий

Результат моделирования операции «Чтение идентификатора производителя» модуля Ведущий

12. Моделирование двухканального режима работы модуля Ведущий

Тестирование двухканального режима работы модуля
Ведомый
Для тестирования модуля
Ведомый был написан
testbench, практически
полностью эмулирующий
работу Ведущего.Модуль
Ведущий генерирует внешний
запрос из инструкции и
адреса флэш-памяти.
Ведомый же отправляет на
линии данных результат
выполнения команды.
Результат моделирования операции «Быстрое чтение» модуля Ведомый

13. Тестирование двухканального режима работы модуля Ведомый

Результат моделирования операции «Быстрый ввод/вывод» модуля Ведомый

14. Тестирование двухканального режима работы модуля Ведомый

Результат моделирования операции «Чтение идентификатора производителя» модуля Ведомый

15. Тестирование двухканального режима работы модуля Ведомый

Результаты синтеза и трассировки модуля Ведущий
Результатом синтеза программы описания работы модуля Ведомый является сложная схема регистров с линиями
внешних сигналов, управляющих работой устройства
Логические элементы (LUT) и регистры (FF) использованы для реализации алгоритмов работы модулей. Блоки памяти
(BRAM) и DSP-блоки не использовались, так как модули не требуют сложных вычислений или хранения больших объемов данных.
Входы/выходы (I/O) использованы для подключения линий SPI (MOSI, MISO, CLK, SS) и других управляющих сигналов.
Ресурсы для модуля Ведущий
Ресурс
Логические элементы (LUT)
Регистры (FF)
Блоки памяти (BRAM)
DSP-блоки
Входы/выходы (I/O)
Использовано
320
256
0
0
12
Ресурс Использовано, %
Доступно
Логические
элементы (LUT)
303600
0.11%
Регистры 0.04%
(FF)
607200
Блоки
памяти
1080
0% (BRAM)
2800DSP-блоки0%
600 Входы/выходы
2% (I/O)
Ресурсы для модуля Ведомый
Использовано
280
240
0
0
8
Доступно
303600
607200
1080
2800
600
Использовано, %
0.09%
0.04%
0%
0%
1.33%

16. Результаты синтеза и трассировки модуля Ведущий

схема была интегрирована в ПЛИС семейства Virtex-7
модели xc7vx485tffg1157-1
Синтезированная схема модуля Ведущий
для интеграции в ПЛИС
Результат трассировки модуля
Ведущий в ПЛИС

17. Результаты синтеза и трассировки модуля Ведущий

Демонстрация программного продукта

18. Демонстрация программного продукта

Заключение
Проведен детальный анализ архитектуры микросхемы W25Q64JV и разработаны алгоритмы передачи
данных для интерфейса SPI.
Созданы архитектура и программная реализация модуля передачи данных на языке Verilog, включая
поддержку ключевых функций двухканального SPI.
Моделирование в Xilinx Vivado подтвердило корректность работы модуля.
Проведены синтез и трассировка модуля для ПЛИС, что доказало его готовность к интеграции в
реальные устройства.
Разработанное решение может быть применено в системах с повышенными требованиями к передачи
данных, таких как промышленная автоматизация и для простых потребителей.
English     Русский Правила