ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Изобретение относится к области микроэлектроники. Более конкретно, изобретение относится к способу передачи данных в соответсвтии с протоколом Jedec и машиночитаемому носителю для реализации данного способа. Изобретение может быть использовано в области производства электронных оперативных запоминающих устройств.
УРОВЕНЬ ТЕХНИКИ
Известен модуль оперативной памяти (https://www.jedec.org/category/technology-focus-area/memory-configurations-jesd21-c, дата обращения 12.12.2023), включающий в себя узел хранения данных, выполненный с возможностью предоставления по запросу системной плате, к которой подключен модуль, служебных данных. Такие служебные данные включают в себя данные настроек модуля оперативной памяти, которые именуются также SPD данными (Serial Presence Detect) и включают в себя данные об оптимальных параметрах работы модуля оперативной памяти (например, тайминги, частота и пр.). В известном модуле служебные данные, включая данные настроек модуля оперативной памяти, хранятся на микросхеме электрически стираемого перепрограммируемого ПЗУ EEPROM (Electrically Erasable Programmable Read-Only Memory). В момент загрузки вычислительной системы системная плата обращается к подключенному к ней модулю оперативной памяти, более конкретно, контроллер оперативной памяти системной платы обращается к узлу хранения данных настроек модуля оперативной памяти с запросом о предоставлении данных настроек модуля оперативной памяти, в ответ на который модуль предоставляет соответствующие данные. Взаимодействие контроллера оперативной памяти и узла хранения данных осуществляется по протоколу JEDEC. В известном устройстве в качестве узла хранения данных используется постоянное запоминающее устройство EEPROM. Упомянутое ПЗУ EEPROM устанавливаются на модуль оперативной памяти его производителем, а служебные данные могут записываться на них только с помощью специальных программаторов при крупносерийном производстве. При этом производитель устанавливает запрет на внесение изменений в записанные служебные данные.
Данные настроек модуля оперативной памяти, в частности тайминги, представляют собой значения, рекомендуемые производителем, однако, они не являются единственно возможными для конкретного модуля оперативной памяти. Кроме того, по умолчанию содержащиеся в данных настроек модуля оперативной памяти значения параметров являются оптимальными далеко не для всех случаев применения соответствующих модулей оперативной памяти. Системным интеграторам и производителем серверов предпочтительно иметь возможность задания параметров работы модулей оперативной памяти, содержащихся в данных настроек модуля оперативной памяти, являющихся оптимальными для конкретной стоящей перед ними задачи; например, может потребоваться выбрать иные тайминги или частоту для более высокого быстродействия системы или большей стабильности её работы. При этом изменение данных настроек модуля оперативной памяти в известном устройстве невозможно без специального программатора. Таким образом, известный модуль оперативной памяти обладает низкой гибкостью настройки параметров его работы.
Для обеспечения большей гибкости настройки параметров разработчиками настоящего решения было принято решение использовать в модуле оперативной памяти узел хранения данных, который включает в себя микроконтроллер и носитель информации, выполненный с возможностью постоянного хранения данных настроек модуля оперативной памяти. При этом микроконтроллер должен быть выполнен с возможностью считывания с носителя информации и оперативного хранения данных настроек модуля оперативной памяти, а также с возможностью передачи оперативно хранящихся данных настроек модуля оперативной памяти в ответ на запрос контроллера оперативной памяти системной платы. Кроме того, микроконтроллер должен быть выполнен с возможностью записи данных настроек модуля оперативной памяти на носитель информации по запросу контроллера оперативной памяти системной платы при условии снятой защиты от записи.
Контроллер оперативной памяти системной платы обменивается информацией с узлом хранения данных оперативной памяти по стандарту Jedec, который предполагает использование шины i2c и протокола Jedec (I2C-bus specification and user manual, опубл. 01.10.2021).
При решении этой задачи разработчики столкнулись с проблемой недоступности средств и методов, способных передавать данные по протоколу Jedec и обладающих при этом требуемыми возможностями и быстродействием. Наиболее подходящими оказались микроконтроллеры, выполненные с возможностью передачи данных по стандарту i2c, которые, однако, по умолчанию не совместимы со стандартом Jedec. Так возникла задача обеспечения возможности реализации вышеупомянутой архитектуры модуля оперативной памяти с использованием микроконтроллера, имеющего возможность передачи данных в соответствии по протоколу i2c, например, RISC-V микроконтроллера MIK32 АМУР.
Протокол i2c (https://i2c.info/i2c-bus-specification, дата обращения 16.01.2024) и протокол Jedec (https://www.jedec.org/category/technology-focus-area/memory-configurations-jesd21-c, дата обращения 16.01.2024) не в полной мере совместимы. Шина i2c содержит линию данных (SDA) и линию синхронизации (SCL). В соответствии с протоколом i2c данные передаются в 8-битных пакетах (байтах). Количество байтов не ограничено, при этом за каждым байтом должен следовать бит подтверждения (девятый бит). Девятый бит (бит подтверждения по протоколу i2c) сигнализирует о том, готово ли устройство к переходу к следующему байту. Для всех битов данных, включая бит подтверждения (девятый бит), ведущее устройство должно генерировать тактовые импульсы в линию синхронизации. Если ведомое устройство не подтверждает передачу, это означает, что данных больше нет или оно ещё не готово к передаче.
В соответствии с протоколом Jedec девятый бит используется для передачи данных. В частности, он может использоваться для сообщения адреса страницы, подлежащей чтению, команды управления защитой от записи или информации о состоянии защиты от записи.
Возможным решением при реализации указанной архитектуры могла бы стать программная реализация на микроконтроллере алгоритма передачи данных в соответствии с протоколом Jedec. При программной реализации микроконтроллер должен успевать реагировать на изменения состояний сигналов линии данных (SDA) и линии синхронизации (SCL), и, в случае необходимости, вовремя выдавать логический 0 на линию данных. Программа должна непосредственно управлять состоянием сигнала, направляемого в линию данных. В связи с тем, что микроконтроллер в узле хранения данных является ведомым устройством, он не может влиять на временные параметры обмена, задаваемые ведущим устройством. Ведущее устройство должно соответствовать требованиям стандарта Jedec в части временных параметров обмена (таблица 24 стр. 29 стандарта 21-C, https://www.jedec.org/category/technology-focus-area/memory-configurations-jesd21-c, дата обращения 12.01.2024). Однако с учётом возможности и необходимости работы на разных скоростях обмена микроконтроллер должен обеспечивать относительно малое время реакции (около 0,6 мкс). Таким образом, программная реализация протокола Jedec предъявляет высокие требования к производительности микроконтроллера.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Задача, стоявшая перед разработчиками раскрытого технического решения, заключалась в создании способа приёма и/или передачи данных между вычислительным устройством, подключенным в качестве ведомого устройства к шине i2c, и ведущим устройством, который обеспечивал бы с одной стороны совместимость вычислительного устройства, работающего по стандарту i2c, со стандартом Jedec для возможности обмена информацией с контроллером оперативной памяти системной платы по стандарту Jedec, а с другой стороны обеспечивал бы уровень быстродействия, достаточный для корректных запуска и завершения сеансов обмена данными. Иными словами, задачей, стоявшей перед разработчиками настоящего технического решения, было расширение арсенала способов передачи данных.
В ходе решения указанной задачи в первом аспекте изобретения создан способ приёма и/или передачи данных между ведущим устройством и вычислительным устройством, подключенным в качестве ведомого устройства к шине I2C, выполненной с возможностью переключения линии данных между ведущим и ведомым устройством под управлением вычислительного устройства между двунаправленным режимом передачи сигналов и однонаправленным от ведущего устройства к ведомому режимом передачи сигналов.
При этом способ включает в себя этапы, на которых вычислительное устройство по запросу ведущего устройства передаёт и/или принимает данные по шине I2C преимущественно в двунаправленном режиме линии данных; при необходимости передачи ведомым устройством логической единицы в качестве бита неподтверждения в соответствии с протоколом Jedec вычислительное устройство временно переключает линию данных шины в однонаправленный режим.
Во втором аспекте изобретения был создан машиночитаемый носитель, содержащий записанные на нём инструкции, которые при выполнении их вычислительным устройством, подключенным в качестве ведомого устройства к шине I2C, выполненной с возможностью переключения линии данных между ведущим устройством и ведомым устройством под управлением вычислительного устройства между двунаправленным режимом передачи сигналов и однонаправленным от ведущего устройства к ведомому режимом передачи сигналов, заставляют вычислительное устройство по запросу ведущего устройства выполнять следующие этапы способа приёма и/или передачи данных между ведущим и ведомым устройствами вычислительное устройство по запросу ведущего устройства передаёт и/или принимает данные по шине I2C преимущественно в двунаправленном режиме линии данных; при необходимости передачи ведомым устройством логической единицы в качестве бита неподтверждения в соответствии с протоколом Jedec вычислительное устройство временно переключает линию данных в однонаправленный режим.
Технический результат, достигаемый раскрытым решением в обоих его аспектах, заключается в реализации способа приёма и/или передачи данных.
Далее в настоящем описании раскрытое техническое решение будет описано более детально со ссылкой на конкретные варианты осуществления и прилагаемые фигуры чертежей.
КРАТКОЕ ОПИСАНИЕ ПРИЛАГАЕМЫХ ФИГУР ЧЕРТЕЖЕЙ
Фиг.1 - функциональная схема подключения варианта осуществления вычислительного устройства, позволяющего реализовать способ в соответствии с раскрытым изобретением, к системной плате. Цифрами в круглых скобках обозначены позиции устройств, участвующих в подключении.
Фиг.2 - схема реализации буферного блока в одном из вариантов осуществления изобретения, позволяющем реализовать способ в соответствии с раскрытым изобретением. Цифрами в квадратных скобках обозначены номера выводов элементов логической схемы.
ВАРИАНТЫ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ
В настоящем описании раскрыт способ приёма и/или передачи данных между ведущим устройством 30 и вычислительным устройством 40, подключенным в качестве ведомого устройства к шине I2C. Причём шина выполнена с возможностью переключения линии 10 данных шины между ведущим устройством 30 и ведомым устройством (а именно, вычислительным устройством 40) между двунаправленным режимом передачи сигналов и однонаправленным от ведущего устройства 30 к ведомому устройству (а именно, вычислительному устройству 40) режимом передачи сигналов; причём упомянутое переключение происходит под управлением вычислительного устройства 40.
В настоящем описании используются признаки «ведомое устройство» и «вычислительное устройство 40». Фактически, в рамках раскрытого изобретения это одна и та же сущность, однако в контексте протокола передачи данных авторы посчитали предпочтительным использовать терминологию стандарта. Поэтому, в частности, при характеристике направления передачи сигналов используется признак «ведомое устройство», а при характеристике этой сущности как управляющего элемента используется признак «вычислительное устройство 40».
Упомянутая возможность переключения линии 10 данных может обеспечиваться благодаря тому, что линия 10 данных между ведущим устройством 30 и ведомым устройством содержит последовательно соединённый с ней буферный блок 50, выполненный с возможностью временного переключения в однонаправленный режим передачи сигналов от ведущего устройства 30 к ведомому устройству, а также с возможностью переключения в двунаправленный режим передачи сигналов. Переключение в однонаправленный режим и обратно в двунаправленный выполняется под управлением вычислительного устройства 40.
В рамках раскрытого технического решения возможность микроконтроллера 40 работать по протоколу Jedec обеспечивается помимо прочего благодаря тому, что линия 10 данных включает в себя буферный блок 50, соединённый последовательно с линией 10 данных (SDA) шины i2c между ведущим и ведомым устройствами. Последовательное соединение предполагает, что любой сигнал, направляемый по линии данных шины должен пройти через буферный блок 50. При этом буферный блок 50 выполнен с возможностью под воздействием управляющего сигнала вычислительного устройства 40 переключаться в любой из следующих режимов передачи сигналов: двунаправленный или однонаправленный, причём в однонаправленном режиме буферный блок 50 допускает приём информации ведомым устройством (вычислительным устройством 40) и блокирует передачу информации ведомого устройства по линии 10 данных.
Для упомянутого переключения буферного блока 50 под управлением вычислительного устройства 40 вычислительное устройство 40 выполнено с возможностью передачи управляющего сигнала на буферный блок 50. Для этого управляющий вывод 60 вычислительного устройства 40 может быть соединён с буферным блоком 50 с возможностью передачи управляющего сигнала.
В предпочтительном варианте осуществления изобретения буферный блок 50 включает в себя подключенные параллельно друг другу двунаправленный буферный элемент 70 и однонаправленный буферный элемент 80. Параллельное соединение предполагает, что любой сигнал, проходящий через буферный блок 50, должен пройти либо через двунаправленный буферный элемент 70, либо через однонаправленный буферный элемент 80. В этом варианте осуществления двунаправленный буферный элемент 70 выполнен с возможностью блокировки передачи сигналов через него и с возможностью обеспечения передачи сигналов в обоих направлениях линии данных в активном состоянии двунаправленного буферного элемента 70; а однонаправленный буферный элемент 80 выполнен с возможностью обеспечения передачи сигналов только в одном направлении от ведущего устройства 30 ведомому устройству в активном состоянии однонаправленного буферного элемента 80. При этом буферный блок 50 может быть выполнен с возможностями при переключении в однонаправленный режим блокировки двунаправленного буферного элемента 70 и активации однонаправленного буферного элемента 80. Кроме того, буферный блок может быть выполнен с возможностью активации двунаправленного буферного элемента 70 при переключении в двунаправленный режим передачи сигналов. Также однонаправленный буферный элемент 80 может быть выполнен с возможностью блокировки передачи сигналов через него, при этом буферный блок 50 может быть выполнен с возможностью блокировать однонаправленный буферный элемент 80 при переключении в двунаправленный режим под управлением вычислительного устройства 40.
В соответствии с раскрытым изобретением к линии 10 данных шины подключены вычислительное устройство 40 и буферный блок 50. При этом вычислительное устройство 40 выполнено с возможностью передачи данных по протоколу i2c в качестве ведомого устройства. В качестве такого вычислительного устройства 40 может использоваться RISC-V микроконтроллер MIK32 АМУР.
Преимуществами RISC-V микроконтроллера MIK32 АМУР являются во-первых, возможность работы по шине i2c в качестве ведомого устройства, что является необходимым для функционирования раскрытого изобретения; и, во-вторых, RISC-V микроконтроллера MIK32 АМУР выполнен с возможностью задавать не один фиксированный адрес ведомого устройства на шине i2c, а позволяет задать два адреса, один из которых может быть групповым (то есть охватывать сразу группу адресов). Протокол Jedec предполагает специфические команды, которые кодируются с помощью адреса устройства на шине; следовательно, для обеспечения возможности приёма этих команд, вычислительное устройство 40 должно быть выполнено с возможностью отклика по меньшей мере по 8 различным адресам ведомого устройства на шине. Наличие группового адреса в RISC-V микроконтроллере MIK32 АМУР обеспечивает такую возможность.
В протоколе i2c после каждого переданного байта приёмник сообщает в шину бит подтверждения (девятый бит): логический 0 (ACK) в случае подтверждения приёма, логическая 1 (NACK) - неподтверждения (например, в случае завершения операции чтения). В вычислительное устройство 40, выполненное с возможностью передачи данных по протоколу i2c, заложена такая логика и она не соответствует логике протокола Jedec. В соответствии с протоколом Jedec девятый бит используется для передачи информации. Так, например, в случае, когда ведущее устройство выдаёт команду чтения адреса страницы, ведомое устройство в девятом бите сообщает адрес выбранной страницы: ACK - страница 0, NACK - страница 1. Также в соответствии с протоколом существует восемь команд управления защитой от записи блоков памяти (4 команды, устанавливающие защиту и 4 команды, проверяющие состояние защиты). Если в девятом бите ведомое устройство выдаёт АСК, это означает, что блок памяти не защищён от записи, если выдаётся NACK, это означает, что блок памяти защищён от записи. При записи данных на ведомое устройство ведомое устройство выставляет ACK после байта команды и байта адреса элемента массива; на байт данных выставляется АСК в случае отсутствия защиты от записи (или снятой защиты от записи) и выставляется NACK в случае установленной защиты от записи.
Вычислительное устройство 40, выполненное с возможностью передачи данных по протоколу i2c выставляет значения девятого бита в соответствии с протоколом i2c (преимущественно выставляет - АСК после каждого байта). Для обеспечения совместимости в случае, когда в соответствии с протоколом Jedec ведущее устройство 30 должно получить от вычислительного устройства 40 логическую 1 - NACK, необходимо блокировать передачу логического 0 - АСК вычислительным устройством 40 в шину.
В соответствии с изобретением способ включает в себя этапы, на которых вычислительное устройство 40 по запросу ведущего устройства 30 передаёт и/или принимает данные по шине I2C преимущественно в двунаправленном режиме передачи сигналов; то есть буферный блок 50 находится в двунаправленном режиме. В предпочтительном варианте осуществления изобретения в этом режиме активен двунаправленный буферный элемент 70 (то есть разрешена его работа), а однонаправленный буферный элемент 80 заблокирован. Такая активация или блокировка буферных элементов может осуществляться путём направления на буферный блок 50 вычислительным устройством 40 соответствующего управляющего сигнала, разрешающего работу буферного элемента (активирующего его) или блокирующего его.
В соответствии с изобретением способ включает в себя этап, на котором при необходимости передачи ведомым устройством логической единицы в качестве бита неподтверждения в соответствии с протоколом Jedec вычислительное устройство 40 временно переключает линию 10 данных шины в однонаправленный режим. Для этого вычислительное устройство 40 посредством управляющего вывода 60 может направить на буферный блок 50 сигнал управления, под действием которого буферный блок 50 переходит в однонаправленный режим передачи сигналов от ведущего устройства 30 к ведомому устройству. Для этого, в предпочтительном варианте осуществления изобретения управляющий сигнал вычислительного устройства 40 блокирует передачу сигналов через двунаправленный буферный элемент 70 и разрешает передачу сигналов через однонаправленный буферный элемент 80.
Управляемый вычислительным устройством 40 буферный блок 50 предназначен в первую очередь для обеспечения совместимости упомянутых протоколов передачи данных. Он реализует эту функцию благодаря возможности под управлением вычислительного устройства 40 обеспечивать либо двунаправленный, либо однонаправленный от ведущего ведомому устройству режимы передачи сигналов. В большинстве случаев от ведомого устройства требуется выдавать логический 0 - АСК, буферный блок в этих случаях работает в двунаправленном режиме, пропуская логический 0 - АСК от ведомого устройства (вычислительного устройства 40) к ведущему устройству 30. В случае необходимости передачи ведомым устройством логической 1 - NACK, вычислительное устройство 40 через управляющий вывод 60 направляет управляющий сигнал (в представленном на фигурах чертежей варианте осуществления это логический ноль), блокирующий двунаправленный буферный элемент 70 и разрешающий работу однонаправленного буферного элемента 80 (или активирующий однонаправленный буферный элемент), тем самым переключая линию 10 данных в однонаправленный режим передачи сигналов от ведущего устройства 30 к ведомому устройству. В однонаправленном режиме сигнал ведомого устройства (вычислительного устройства 40) не доходит до ведущего устройства 30. При этом сигнал логической 1 - NACK в линии данных формируется благодаря наличию в интерфейсе i2c в соответствии с его спецификацией источника тока или «подтягивающего» резистора 90, подключенного к источнику питающего напряжения. В качестве источника питающего напряжения резистора 90 может использоваться источник питания вычислительного устройства 40. Предложенная схема с двумя буферными элементами делит линию данных между ведущим устройством 30 и ведомым устройством (вычислительным устройством 40) на два сегмента: JEDEC SDA и I2C SDA. Для корректной работы каждого из сегментов шины согласно спецификации I2C устанавливается свой подтягивающий резистор 90 или источник тока. То есть один подтягивающий резистор 90 подключен к линии 10 данных по отношению к буферному блоку 50 со стороны ведомого устройства; второй подтягивающий резистор 90 подключен к линии данных по отношению к буферному блоку 50 со стороны ведущего устройства 30. В некоторых вариантах осуществления изобретения используется подтягивающий резистор, подключенный к источнику питания; в иных вариантах осуществления может быть использовано подключение к источнику тока. Этот принцип с примерами деления на сегменты представлен на рис. 1 стр. 4 и на рис. 43 стр. 52 спецификации I2C I2C-bus specification and user manual, опубл. 01.10.2021, рисунок 1 на стр. 4, и рисунок 43 на странице 52). Функция подтягивающих резисторов описана в п.3.1.1 на странице 8 спецификации I2C (I2C-bus specification and user manual, опубл. 01.10.2021): “SDA и SCL - это двунаправленные линии, подключенные к положительному напряжению питания посредством источника тока или подтягивающего резистора (см. Рисунок 3). Когда шина свободна, обе линии находятся в состоянии “ВЫСОКИЙ” (HIGH). Выходные каскады устройств, подключенных к шине, должны иметь открытый сток или открытый коллектор, чтобы выполнять функцию “монтажное ИЛИ”” (перевод авторов). Таким образом, в соответствии со стандартом протокола i2c линия 10 данных шины i2c по умолчанию содержит подтягивающий резистор или источник тока в каждом из сегментов линии 10 данных: между буферным блоком 50 и ведущим устройством 30; и между буферным блоком 50 и ведомым устройством.
Таким образом, в приведённом варианте осуществления при необходимости выдачи в линию 10 данных шины логической «1» в качестве бита неподтверждения вычислительное устройство 40 через управляющий вывод 60 формирует управляющий сигнал, блокирующий двунаправленный буферный элемент 70 и разрешающий работу однонаправленного буферного элемента 80 (или активирующий этот элемент). В результате этого благодаря наличию подтягивающего резистора в линии данных сегмента шины между буферным блоком 50 и ведущим устройством 30 формируется логическая «1».
В качестве двунаправленного буферного элемента в некоторых вариантах осуществления может использоваться логический вентиль (например, 66 элемент 74 серии 74LVC1G66). В качестве однонаправленного буферного элемента может быть использована совокупность вентилей, например 02 вентиль с полевым транзистором (например, IRLML2502) или совокупность вентилей 02 и 06. Необходимо понимать, что буферный блок 50 может иметь иную конструкцию из известных компонентов, обеспечивающих возможность переключения между двунаправленным и однонаправленным от ведущего устройства к ведомому устройству режимами, что не выходит за рамки сущности раскрытого технического решения. В различных вариантах осуществления раскрытого технического решения буферный блок может иметь иные схемные решения. Раскрытая схема с программно-аппаратной реализацией передачи данных по протоколу Jedec с одной стороны позволяет реализовать назначение узла хранения данных и модуля оперативной памяти в целом, а с другой стороны позволяет ослабить требования к производительности микроконтроллера и времени его реакции по сравнению с программной реализацией передачи данных.
Во втором аспекте настоящего изобретения раскрыт машиночитаемый носитель, содержащий записанные на нём инструкции, которые при выполнении их вычислительным устройством, подключенным в качестве ведомого устройства к шине I2C, выполненной с возможностью переключения линии данных под управлением вычислительного устройства между двунаправленным режимом передачи сигналов и однонаправленным от ведущего устройства к ведомому режимом передачи сигналов, заставляют вычислительное устройство по запросу ведущего устройства выполнять следующие этапы способа приёма и/или передачи данных между ведущим и ведомым устройствами вычислительное устройство по запросу ведущего устройства передаёт и/или принимает данные по шине I2C преимущественно в двунаправленном режиме передачи сигналов; при необходимости передачи ведомым устройством логической единицы в качестве бита неподтверждения в соответствии с протоколом Jedec вычислительное устройство временно переключает линию данных в однонаправленный режим.
Машиночитаемый носитель может представлять собой любой пригодный носитель, к которому система может осуществить доступ, причем такой носитель может включать в себя как энергозависимый, так и энергонезависимый носитель, а также съемный и несъемный носитель. В качестве примера, но не ограничения, машиночитаемый носитель может содержать компьютерную запоминающую среду и среду связи. Компьютерная запоминающая среда включает в себя как энергозависимый, так и энергонезависимый, съемный и несъемный носитель, реализованный любым способом или по любой технологии, используемой для хранения такой информации, как машиночитаемые инструкции, структуры данных, программные модули или другие данные. Компьютерная запоминающая среда включает в себя, но не только, ОЗУ (RAM), ПЗУ (ROM), электрически стираемое программируемое ПЗУ (EEPROM), флэш-память либо другую технологию памяти, компакт-диск (CD-ROM), цифровой универсальный диск (DVD) либо другие оптические дисковые запоминающие устройства, магнитные кассеты, магнитную ленту, магнитное дисковое запоминающее устройство либо другие магнитные запоминающие устройства или любой другой носитель, который можно использовать для хранения требуемой информации и к которому система обработки запросов может осуществить доступ. Среда связи обычно воплощает машиночитаемые инструкции, структуры данных, программные модули или другие данные в модулированном сигнале данных, таком как сигнал несущей или другой механизм транспортировки, и включает в себя любую среду для доставки информации. Термин «модулированный сигнал данных» означает сигнал, одна или несколько характеристик которого устанавливается или изменяется таким образом, чтобы закодировать информацию в этом сигнале. В качестве примера, но не исключения, среда связи включает в себя проводную среду, такую как проводная сеть или прямое проводное соединение, а также беспроводную среду, такую как акустическая, радиочастотная, инфракрасная и другая беспроводная среда. В состав машиночитаемых носителей следует также включить комбинации из любых вышеуказанных носителей (сред).
Накопители и ассоциированные с ними носители компьютерной среды хранения, обсужденные выше, обеспечивают хранение машиночитаемых инструкций, структур данных, программных модулей и других данных для функционирования системы.
Настоящее техническое решение было подробно описано со ссылкой на отдельные варианты его осуществления, однако очевидно, что оно может быть осуществлено в различных вариантах, не выходя за рамки заявленного объёма правовой охраны, определяемого формулой изобретения.
название | год | авторы | номер документа |
---|---|---|---|
МОДУЛЬ ОПЕРАТИВНОЙ ПАМЯТИ | 2024 |
|
RU2822919C1 |
Способ передачи данных по шине, система связи для осуществления данного способа и устройство автоматической защиты для предотвращения аварийной ситуации на объекте управления | 2018 |
|
RU2705421C1 |
МОБИЛЬНЫЙ МЕТЕОКОМПЛЕКС | 2021 |
|
RU2773253C1 |
Способ тестирования микросхем энергонезависимой памяти и устройство для его осуществления | 2023 |
|
RU2821349C1 |
УСИЛЕНИЕ МЕХАНИЗМА ПЕРЕЧИСЛЕНИЯ И/ИЛИ КОНФИГУРАЦИИ ОДНОГО ПРОТОКОЛА МЕЖСОЕДИНЕНИЙ ДЛЯ ДРУГОГО ПРОТОКОЛА МЕЖСОЕДИНЕНИЙ | 2013 |
|
RU2633126C2 |
ПЕРЕНОСНОЙ ДИАГНОСТИЧЕСКИЙ КОМПЛЕКС | 2015 |
|
RU2612072C1 |
ПЕРЕНОСНОЙ ДИАГНОСТИЧЕСКИЙ КОМПЛЕКС | 2015 |
|
RU2612069C1 |
Сложно-функциональный блок для СБИС типа система на кристалле | 2018 |
|
RU2691886C1 |
ПРОГРАММИРУЕМОЕ УСТРОЙСТВО ЦИФРОВОЙ ОБРАБОТКИ СИГНАЛОВ | 2009 |
|
RU2419139C1 |
СХЕМА, СПОСОБ И УСТРОЙСТВО ДЛЯ ПРОБУЖДЕНИЯ ГЛАВНОГО БЛОКА МИКРОКОНТРОЛЛЕРА | 2015 |
|
RU2643474C2 |
Изобретение относится к области микроэлектроники. Более конкретно изобретение относится к способу приёма и/или передачи данных между ведущим устройством и вычислительным устройством, подключенным в качестве ведомого устройства к шине I2C, выполненной с возможностью переключения линии данных в сегменте между ведущим и ведомым устройством под управлением вычислительного устройства между двунаправленным режимом передачи сигналов и однонаправленным от ведущего устройства к ведомому режимом передачи сигналов. При этом способ включает в себя этапы, на которых вычислительное устройство по запросу ведущего устройства передаёт и/или принимает данные по шине I2C преимущественно в двунаправленном режиме передачи сигналов; при необходимости передачи ведомым устройством логической единицы в качестве бита неподтверждения в соответствии с протоколом Jedec вычислительное устройство временно переключает линию данных шины в однонаправленный режим. Технический результат, достигаемый раскрытым решением, заключается в реализации способа приёма и/или передачи данных. 2 н. и 12 з.п. ф-лы, 2 ил.
1. Способ приёма и/или передачи данных между ведущим устройством и вычислительным устройством, подключенным в качестве ведомого устройства к шине I2C, выполненной с возможностью переключения линии данных между ведущим и ведомым устройством под управлением вычислительного устройства между двунаправленным режимом передачи сигналов и однонаправленным от ведущего устройства к ведомому режимом передачи сигналов, включающий в себя этапы, на которых
вычислительное устройство по запросу ведущего устройства передаёт и/или принимает данные по шине I2C преимущественно в двунаправленном режиме линии данных шины;
при необходимости передачи ведомым устройством логической единицы в качестве бита неподтверждения в соответствии с протоколом Jedec вычислительное устройство временно переключает линию данных шины в однонаправленный режим.
2. Способ по п. 1, отличающийся тем, что в качестве вычислительного устройства используется микроконтроллер, выполненный с возможностью передачи данных по шине I2C в качестве ведомого устройства.
3. Способ по п. 2, отличающийся тем, что в качестве микроконтроллера используется RISC-V микроконтроллер MIK32 АМУР.
4. Способ по любому из пп. 2 или 3, отличающийся тем, что
переключение линии данных обеспечивается благодаря тому, что линия данных содержит последовательно соединённый с ней буферный блок, выполненный с возможностью временного переключения под управлением вычислительного устройства в однонаправленный режим передачи сигналов, а также с возможностью переключения под управлением вычислительного устройства в двунаправленный режим передачи сигналов.
5. Способ по п. 4, отличающийся тем, что
буферный блок включает в себя соединённые параллельно друг другу двунаправленный буферный элемент и однонаправленный буферный элемент;
при этом
двунаправленный буферный элемент выполнен с возможностью блокировки передачи сигналов через него и с возможностью обеспечения возможности передачи сигналов в обоих направлениях линии данных в активном состоянии двунаправленного буферного элемента;
однонаправленный буферный элемент выполнен с возможностью обеспечения передачи сигналов только в одном направлении от ведущего устройства к ведомому устройству в активном состоянии однонаправленного буферного элемента;
буферный блок выполнен с возможностями при переключении в однонаправленный режим блокировки двунаправленного буферного элемента и активации однонаправленного буферного элемента;
буферный блок выполнен с возможностью активации двунаправленного буферного элемента при переключении в двунаправленный режим под управлением вычислительного устройства.
6. Способ по п. 5, отличающийся тем, что
однонаправленный буферный элемент выполнен с возможностью блокировки передачи сигналов через него;
буферный блок выполнен с возможностью блокировать однонаправленный буферный элемент при переключении в двунаправленный режим под управлением вычислительного устройства.
7. Способ по п. 1, отличающийся тем, что
вычислительное устройство выполнено с возможностью отклика по шине i2c по по меньшей мере восьми адресам на шине i2c.
8. Машиночитаемый носитель, содержащий записанные на нём инструкции, которые при выполнении их вычислительным устройством, подключенным в качестве ведомого устройства к шине I2C, выполненной с возможностью переключения линии данных между ведущим устройством и ведомым устройством под управлением вычислительного устройства между двунаправленным режимом передачи сигналов и однонаправленным от ведущего устройства к ведомому режимом передачи сигналов,
заставляют вычислительное устройство по запросу ведущего устройства выполнять следующие этапы способа приёма и/или передачи данных между ведущим и ведомым устройствами:
вычислительное устройство по запросу ведущего устройства передаёт и/или принимает данные по шине I2C преимущественно в двунаправленном режиме линии данных шины;
при необходимости передачи ведомым устройством логической единицы в качестве бита неподтверждения в соответствии с протоколом Jedec вычислительное устройство временно переключает линию данных в однонаправленный режим.
9. Машиночитаемый носитель по п. 8, отличающийся тем, что в качестве вычислительного устройства используется микроконтроллер, выполненный с возможностью передачи данных по шине I2C в качестве ведомого устройства.
10. Машиночитаемый носитель по п. 9, отличающийся тем, что в качестве микроконтроллера используется RISC-V микроконтроллер MIK32 АМУР.
11. Машиночитаемый носитель по любому из пп. 9 или 10, отличающийся тем, что
переключение линии данных в однонаправленный режим обеспечивается благодаря тому, что линия данных содержит последовательно соединённый с ней буферный блок, выполненный с возможностью временного переключения под управлением вычислительного устройства в однонаправленный режим передачи сигналов, а также с возможностью переключения под управлением вычислительного устройства в двунаправленный режим передачи сигналов.
12. Машиночитаемый носитель по п. 11, отличающийся тем, что
буферный блок включает в себя соединённые параллельно друг другу двунаправленный буферный элемент и однонаправленный буферный элемент;
при этом
двунаправленный буферный элемент, выполнен с возможностью блокировки передачи сигналов через него и с возможностью обеспечения возможности передачи сигналов в обоих направлениях линии данных в активном состоянии двунаправленного буферного элемента;
однонаправленный буферный элемент выполнен с возможностью обеспечения передачи сигналов только в одном направлении от ведущего устройства к ведомому устройству в активном состоянии однонаправленного буферного элемента;
буферный блок выполнен с возможностями при переключении в однонаправленный режим блокировки двунаправленного буферного элемента и активации однонаправленного буферного элемента;
буферный блок выполнен с возможностью активации двунаправленного буферного элемента при переключении в двунаправленный режим под управлением вычислительного устройства.
13. Машиночитаемый носитель по п. 12, отличающийся тем, что
однонаправленный буферный элемент выполнен с возможностью блокировки передачи сигналов через него;
буферный блок выполнен с возможностью блокировать однонаправленный буферный элемент при переключении в двунаправленный режим под управлением вычислительного устройства.
14. Машиночитаемый носитель по п. 8, отличающийся тем, что
вычислительное устройство выполнено с возможностью отклика по шине i2c по по меньшей мере восьми адресам на шине i2c.
US 20200259936 A1, 13.08.2020 | |||
CN 113868176 A, 31.12.2021 | |||
US 20210119835 A1, 22.04.2021 | |||
US 11467909 B1, 10.11.2022 | |||
0 |
|
SU194084A1 |
Авторы
Даты
2024-08-06—Публикация
2024-02-05—Подача