![Разширение Mémoire Pour BeagleBone Черно: 8 стъпки Разширение Mémoire Pour BeagleBone Черно: 8 стъпки](https://i.howwhatproduce.com/images/006/image-15929-21-j.webp)
Съдържание:
2025 Автор: John Day | [email protected]. Последно модифициран: 2025-01-23 14:36
![Удължител Mémoire Pour BeagleBone Черен Удължител Mémoire Pour BeagleBone Черен](https://i.howwhatproduce.com/images/006/image-15929-22-j.webp)
Je vous présenter dans cet instructable un de mes projet qui consistait à piloter des mémoires de différents types afin de pouvoir tester leur fonctionnement dans des conditions spatiales (enceinte radiative) et de trouver le taux d'erreurs engendré par cet Environnement pour chaque type. Vous pouvez aussi utiliser les données de ce projet pour étendre la mémoire de votre BeagleBone, crér une clé USB или ou simplement pour étudier leur fonctionnement.
Стъпка 1: Quelques Types De Mémoires
![Quelques Types De Mémoires Quelques Types De Mémoires](https://i.howwhatproduce.com/images/006/image-15929-23-j.webp)
![Quelques Types De Mémoires Quelques Types De Mémoires](https://i.howwhatproduce.com/images/006/image-15929-24-j.webp)
![Quelques Types De Mémoires Quelques Types De Mémoires](https://i.howwhatproduce.com/images/006/image-15929-25-j.webp)
Voici une listen изчерпателно des différents типове de mémoires utilisés dans ce projet avec leurs avantage et inconvénients:
Premier type de mémoire: la mémoire SRAM
La mémoire vive statique (или статична памет с произволен достъп) е тип, който използва memoire vive utilisant des bascules pour mémoriser les données. Contrairement à la mémoire dynamique, son contenu n’a pas besoin d’être rafraîchit périodiquement. Elle reste cependant volatile: elle ne peut se passer d'alimentation sous peine de voir ses informations effacées irémédiablement!
Предимства: - la SRAM est rapide (temps d'accès 6 à 25 ns) - peu coûteuse (4 €/Mo). d'ajouter à notre carte mémoire un moyen de l'alimenter en постоянство. Le moyen trouvé est d’ajouter un super condensateur Cellergy pouvant alimenter la mémoire pendant une journée.
Deuxième type de mémoire: la mémoire MRAM
La mémoire vive statique magnétique (Магнитна памет с произволен достъп) запасите les données sans avoir besoin d’être alimentée. Le changement d'état se fait en changeant l’orientation polaire des électrons (par Effet tunel notamment). Elle est très résistante aux radiations et aux hautes températures. Предимства:- la non-volatilité des information. - inusabilité, puis ce qu’aucun mouvement électrique n'est angagé (издръжливост от 10^16 цикъла лекция /écriture!). - la consommation électrique est théoriquement moindre puisqu'il n'y a pas de perte thermique поради à la résistance des matériaux aux mouvements des électrons. - temps d’accès de 10 наносекунди. - les débits sont de l'ordre du gigabit par seconde. - une excellente résistance aux radiations, omniprésentes dans un milieu spatial. Inconvénients: - coûteuse (~ 35 €/Mo) кола encore en фаза на развитие (комерсиализация de masse du produit prévue en 2018!) mais on peut s'en procurer chez Digikey commercialisé sous la marque Everspin.- kapacité de stockage est très limitée due aux champs magnétiques qui risquent de perturber les cellules voisines si elles sont trop proches les unes des autres.
Troisième type de mémoire: la mémoire FRAM
La mémoireFRAM (Фероелектрическа памет с произволен достъп) е тип тип памет, която не е променлива, на бис, на базата на информация и разработка.
Elle est similaire à la mémoire DRAM à laquelle on ajouté une couche ferro-électrique pour obtenir la non volatilité. На май 2011 г., Texas Instruments лансира премиерния микроконтролер à mémoire FRAM.
Лесното използване е предназначено за SSD (Solid State Drive), заповядайте за запазване на непостоянни енергонезависими материали, за намаляване на потреблението на енергия за консервиране. Предимства: - une plus faible consommation d’électricité. - une plus grande rapidité de lecture et d'écriture (temps d'accès de 100 nanosecondes contre 1 microseconde pour la mémoire flash). - la възможност за effacée et réccrite un bien плюс grand nombre de fois (издръжливост от 10^14 цикъла лекции/ccritures). Неудобни: - des kapacités de stockage plus limitées - un coût de fabrication плюс élevé, ~ 30 €/Mo
Les deux grandes familles de mémoires: Серия (снимка 1) и паралел (снимка 2)
Серия: les mémoires séries ont pour avantage de permettre un gain de place et de garder la même configuration selon les modèles d'où leur facilité d'intégration. Cependant ces mémoires ne sont pas très rapide car la trame entière (type d'opération, adresse, données …) doit être reçue avant d’enregistrer ou accéder à la donnée. Typiquement la vitesse d’accès allant de 5 à 20MHz on à au mieux accès aux bits de données que tous les (1/(20*10⁶)) sec soit 50 ns par bits (50ns*8 = 400ns pour 8 bits). Ce type de mémoire est donc utilisé lorsque le temps d’accès aux données à peu d'importance comme lors du chargement d'un BIOS dans certaines cartes de type FPGA.
Parallèle: Les mémoires parallèles sont très utilisées dans tous les domaines allant de la RAM за ordinateur à la clé USB. Ce type de mémoire est beaucoup plus rapide que la mémoire SPI car en un coup d'horloge il permet d'accéder aux information, nous sommes donc sposob de récupérer en quelques ms tout le contenu de la mémoire de 1Mo. L'inconvénient est sa hardé à intégrer car les nombreux pins diffèrent d'un modèle à l'autre et la taille du boîtier est plus grande.
Pour accéder à plusieurs en mémoire en même temps nous devons jouer sur les pins de chip enable (CE) des mémoires afin d'indiquer à laquelle nous voulons accéder (voir schéma). Le schéma est valable pour les deux types de mémoires seul change le moyen d’accès aux données et адреси.
Стъпка 2: Mémoire Serial FRAM SPI
![Мемоарен сериен FRAM SPI Мемоарен сериен FRAM SPI](https://i.howwhatproduce.com/images/006/image-15929-26-j.webp)
![Мемоарен сериен FRAM SPI Мемоарен сериен FRAM SPI](https://i.howwhatproduce.com/images/006/image-15929-27-j.webp)
Câblage de la BeagleBone à la mémoire: Reliés au 3.3V: VDD, HOLD, WP A la masse: VSS MISO relié à SO MOSI relié à SI CS relié à CS
NB: L'avantage de ce type de mémoire SPI est que, peu importe le modèle ou la marque du fabricant de semi-conducteurs, la configuration du boîtier reste la même ce qui n'est pas le cas des autres types de mémoires comme les mémoires parallèles. De plus les datasheet de ces différentes mémoires indiquent que toutes fonctionnent de la même manière. Не е възможно най -евентуалното пътуване до паметта на различните модули без избягване в програмист на алгоритми на нуво.
Les pins HOLD et WP sont reliés au 3.3V: si cela empêche l’utilisateur d’utiliser ces fonctionnalités, cela permet de faciliter la programming. Cependant ces fonctionnalités auraient été utiles si l’on avait plusieurs mémoires SPI à пилот!
Afin de piloter la mémoire il faut d’abord étudier sa fiche техника disponible à l’adresse suivante:
Cette fiche техника indique les différents cycles nécessaires pour lire et écrire dans la mémoire et ainsi réaliser un program permettant de les piloter.
Стъпка 3: Цикли сериен FRAM
![Цикли Сериен FRAM Цикли Сериен FRAM](https://i.howwhatproduce.com/images/006/image-15929-28-j.webp)
![Цикли Сериен FRAM Цикли Сериен FRAM](https://i.howwhatproduce.com/images/006/image-15929-29-j.webp)
![Цикли Сериен FRAM Цикли Сериен FRAM](https://i.howwhatproduce.com/images/006/image-15929-30-j.webp)
![Цикли Сериен FRAM Цикли Сериен FRAM](https://i.howwhatproduce.com/images/006/image-15929-31-j.webp)
Ecriture:
Avant d'écrire dans la mémoire il faut envoyer une trame d'accès à L'écriture (WREN) 0000 0110 (0x06h) (Voir figure 5) Анализирайте de la trame d'écriture envoyée par MOSI de la Beaglebone à SI (Voir figure 9)
- 8 премиерни бита, Op -code de l'écriture (ПРОЧЕТЕТЕ): 0000 0011 (0x03h) - 16 бита адрес, même si cette mémoire n'en разглеждат que 11 car il s'agit d'une memoire de 16Kb ((2 ^11)*8bit) il faut envoyer 16 bits car cela permettra de pouvoir aussi piloter des mémoires 64Kb. - 8 бита за données. Лекция:
Анализирайте пратеника на лекциите за лекции от MOSI de la Beaglebone à SI: (Voir цифра 10)- 8 премиерни бита, Op-код де ла лекция (WRITE): 0000 0010 (0x02h)- 16 бита адрес Анализирайте de la trame de лекция пратеник от SO à MISO de la Beaglebone: - 8 бита от données
Стъпка 4: Code Pilotant La Mémoire FRAM
Изтеглете компилатора ce програма на език C: $ gcc programme_spi.c –o spiPour програма за използване на ce: $./spi add1 add2 режим на данни
Add1 (MSB) и Add2 (LSB) кореспондент на 8 бита от donnée, данните съответстват на 8 bits de données по запис (mettre 0 si лекция) Режимът съответства на lécriture (= 2) или лекция (= 1).
Пример за използване:./spi 150 14 210 2 écrit à l’adresse 16 бита 150 14 (0x96h, 0x0Eh) la donnée 210 (0xD2).
./spi 150 14 0 1 lit à l'adresse150 14 (0x96h, 0x0Eh)
Стъпка 5: Mémoire Parralèle
![Мемуар Парарел Мемуар Парарел](https://i.howwhatproduce.com/images/006/image-15929-32-j.webp)
![Мемуар Парарел Мемуар Парарел](https://i.howwhatproduce.com/images/006/image-15929-33-j.webp)
![Мемуар Парарел Мемуар Парарел](https://i.howwhatproduce.com/images/006/image-15929-34-j.webp)
![Мемуар Парарел Мемуар Парарел](https://i.howwhatproduce.com/images/006/image-15929-35-j.webp)
Pour ce projet j'ai utilisé la mémoire SRAM ALLIANCE AS6C1008 128Kb * 8 bits (voir schéma)
Конфигурация за бойлер: 17 Адреси: A0-A16 8 Данни: D0-D7 2 Разрешаване на чип: CE#-CE2 2 Разрешаване на запис и изход: WE#-OE#2 VCC (3.3V), VSS (GND) 1 без връзка: NC
NB: La disposition des pins varie grandement d'un modèle à un autre ainsi que les temps de lecture / écriture
Pour le câblage à la BeagleBone voir schéma (Un réel plaisir à débugger où lorsque l'on à mal câblé!)
Внимание: Vous vous demandez sans doute pourquoi j'ai sauté сигурен GPIO в les lignes d'adresses и данни, c'est tout simplement que ces GPIO sont alloués à l'EMMC présent sur la BBB et que malgré mes recherches je n'ai jamais réussi à utiliser корекция (me faisant perdre au passage 2 semaines car je pensais la mémoire défectueuse alors que certains GPIO ne fonctionnaient simplement pas!)
Afin de piloter la mémoire il faut d’abord étudier sa fiche техника disponible à l’adressesuivante:
Cette fiche техника indique les différents cycles nécessaires pour lire et écrire dans la mémoire et ainsi réaliser notre програма. Afin d’écrire dans la mémoire il faut respecter le cycle imposé par les constructeurs, qui sont tous les mêmes pour chacune des mémoires utilisées. Ainsi n'importe quelle mémoire 64Kb peut fonctionner avec notre program (si correctement câblé:)) Cependant les temps entre les cycles peuvent varier d'une mémoire à une autre, le cycle le plus long (100ns) des mémoires utilisées étant retenu car s'adaptera à toutes les mémoires. Ainsi les temps d’écriture et мінімум лекции annoncés par les constructeurs ne seront jamais atteints car imposés par la mémoire la plus lente. La durée des cycles est définie dans le code. Le seul moyen d’aller d’atteindre la vitesse maximale et de programmer les cycles pour une mémoire en particulier avec les temps minimaux. Le cycle d’écriture revient à modifier l’état des GPIOs. La base du code est celle qui permet de faire clignoter une LED en ajoutant des temporisations precises съответстващ aux durées des cycles imposées par le constructeur. En Effet l’action de faire clignoter une LED съответстват на създаването на цикли, които са свързани с GPIO.
Le цикъл на лекция quant à lui consiste en la récupération de l’état des GPIO, comme pour détecter l’état d’un bouton poussoir.
Стъпка 6: Цикли Mémoire Parralèle
![Цикли Mémoire Parralèle Цикли Mémoire Parralèle](https://i.howwhatproduce.com/images/006/image-15929-36-j.webp)
![Цикли Mémoire Parralèle Цикли Mémoire Parralèle](https://i.howwhatproduce.com/images/006/image-15929-37-j.webp)
![Цикли Mémoire Parralèle Цикли Mémoire Parralèle](https://i.howwhatproduce.com/images/006/image-15929-38-j.webp)
![Цикли Mémoire Parralèle Цикли Mémoire Parralèle](https://i.howwhatproduce.com/images/006/image-15929-39-j.webp)
Цикъл на поръчка (фигура 1, 2 на гласа):
Pour écrire dans la mémoire il suffit de mettre les pins d'adresse aux valeurs souhaitées puis d'activer les entrées chip enable CE à l'état haut et l'instruction Write enable WE. Une fois cela effectuer mettre les pins des données aux valeurs souhaitées et le tour est joué (Mais внимание tout de même à bien respecter les temporisations! ~ 100ns)
Цикъл на лекциите (фигура 3, 4):
Pour écrire dans la mémoire il suffit de mettre les pins d'adresse aux valeurs souhaitées puis d'activer les entrées chip enable CE à l'état haut et l'instruction Output enable OE. Une fois cela effectué on récupère sur les entrée GPIO de la BeagleBone les valeurs se trouvant à cette adresse.
Стъпка 7: Пилотът на кода La Memoire Parraléle
Ce код permet de piloter 2 mémoire parallèles indépendamment l'une de l'autre et s'utilise comme ceci:
компилация: $ gcc -lm programme_memoire.c -o мемоар
$./мемоар добавяне 1 добавяне 2 данни1 режим на данни2 слот1 слот2
режим: 1 лекция, 2 учебни
Le code étant créer pour piloter deux mémoires il y a deux "slots", mettre à 1 pour utiliser.
Например: $./Мемоар 120 140 20 210 2 1 0
écrit à l'adresse 120 140 (шестнадесетични 16 бита) les données 20 210 sur la mémoire sur le slot 1.
Например: $./Мемоар 120 140 0 0 1 1 1
lit à l'adresse 120 140 les données sur la mémoire du slot 1 et 2.
Стъпка 8: Подкрепете Pour Mémoires
![Подкрепете Pour Mémoires Подкрепете Pour Mémoires](https://i.howwhatproduce.com/images/006/image-15929-40-j.webp)
![Подкрепете Pour Mémoires Подкрепете Pour Mémoires](https://i.howwhatproduce.com/images/006/image-15929-41-j.webp)
![Подкрепете Pour Mémoires Подкрепете Pour Mémoires](https://i.howwhatproduce.com/images/006/image-15929-42-j.webp)
![Подкрепете Pour Mémoires Подкрепете Pour Mémoires](https://i.howwhatproduce.com/images/006/image-15929-43-j.webp)
Je vous fournit dans les photos les PCB de support mémoire sur lequel vous pourrez vous inspirer pour vos realizations. Si vous voulez réaliser un système de mémoire взаимозаменяеми comme moi veillez bien à câbler корекция vos mémoires en utilisant toujours le même ordre pour les pins.
Si vous avez des questions remarques n'hésitez pas tout avis est le bienvenu, en espérant vous avoir aidé!
Препоръчано:
Черно огледало: 4 стъпки
![Черно огледало: 4 стъпки Черно огледало: 4 стъпки](https://i.howwhatproduce.com/images/005/image-13254-j.webp)
Черно огледало: Този проект беше моят опит да направя умно огледало. Моята цел за този проект беше да създам огледало с часовник, който все още да се вижда в огледалото. По този начин, когато се приготвяте сутрин, времето е точно там. Опитах се и да рекламирам
Как да направите видео черно -бяло?: 3 стъпки
![Как да направите видео черно -бяло?: 3 стъпки Как да направите видео черно -бяло?: 3 стъпки](https://i.howwhatproduce.com/images/010/image-28901-j.webp)
Как да направим видео черно -бяло?: Технологията на съвременната фотография и заснемане прави обикновения човек специалист в заснемането на снимки и видеоклипове. Винаги можем да създадем ярко видео в пълен цвят. Но понякога искаме да направим нещата малко по -различни, например да направим стара
Червено на черно: Поклон пред Татлин: 9 стъпки (със снимки)
![Червено на черно: Поклон пред Татлин: 9 стъпки (със снимки) Червено на черно: Поклон пред Татлин: 9 стъпки (със снимки)](https://i.howwhatproduce.com/images/012/image-33227-j.webp)
Червено в черно: Поклон пред Татлин: Тази кинетична скулптура е вдъхновена от Татлиновата кула, проект, който руският архитект Владимир Татлин създава през 1920 г. Стоманената рамка на кулата с формата на двойна спирала е трябвало да поддържа четири геометрични форми (куб , пирамида
Черно огледало: 8 стъпки
![Черно огледало: 8 стъпки Черно огледало: 8 стъпки](https://i.howwhatproduce.com/preview/how-to-implement/10467904-black-mirror-8-steps-0.webp)
Черно огледало: За проекта Това е забавен, релаксиращ говорител, който може да бъде в баланс с минималистичен дизайн на стая. Той предоставя уникално изживяване при манипулиране на музика, придружено от изящна визуализация на движение в повърхност на ферофлуид
Стана черно! VS код: 16 стъпки
![Стана черно! VS код: 16 стъпки Стана черно! VS код: 16 стъпки](https://i.howwhatproduce.com/images/003/image-6083-35-j.webp)
Стана черно! VS код: Днес ще говорим за PlatformIO. Това е усъвършенстван инструмент с няколко функции, които „свързват“използването му с Visual Studio Code. Смятам тази тема за малко напреднала и затова предлагам тази двойка да се използва за кодове, които имат повече от 200 реда. Но