جدول المحتويات:

ملحق Mémoire Pour BeagleBone أسود: 8 خطوات
ملحق Mémoire Pour BeagleBone أسود: 8 خطوات

فيديو: ملحق Mémoire Pour BeagleBone أسود: 8 خطوات

فيديو: ملحق Mémoire Pour BeagleBone أسود: 8 خطوات
فيديو: Pankaj Bharadiya - Android accessory development with Beaglebone 2024, يوليو
Anonim
تمديد Mémoire Pour BeagleBone أسود
تمديد Mémoire Pour BeagleBone أسود

Je vous présenter dans cet التعليمي un de mes projet qui constait à piloter des mémoires de different types afin de pouvoir tester leur fonctionnement dans des condition spatiales (enceinte radiative) et de taux d'erreurs engendré par cet Environnement pour chaque type. Vous pouvez aussi utiliser les données de ce projet for étendre la mémoire de votre BeagleBone، créer une clé USB ou simplement for étudier leur fonctionnement.

الخطوة 1: Quelques Types De Mémoires

Quelques Types De Mémoires
Quelques Types De Mémoires
Quelques Types De Mémoires
Quelques Types De Mémoires
Quelques Types De Mémoires
Quelques Types De Mémoires

قائمة شاملة لمختلف أنواع المذكرات المستخدمة في المشاريع المتعلقة بالطرائق والمضار:

النوع الأول من المذكرات: la mémoire SRAM

La mémoire vive statique (ou Static Random Access Memory) هي نوع من الذكريات الحية المستفيدة من bascules pour Mémoriser les données. التناقض في الذاكرة الديناميكي ، ابن كونتينو 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 information effacées irrémédiablement!

الطروحات: - la SRAM est rapide (temps d'accès 6 à 25 ns) - peu coûteuse (4 € / Mo). المقربون: - besoin d'être alimenté en Permanentence pour ne pas perdre ses données، aussi ce type de mémoire impose d'ajouter à notre carte mémoire un moyen de l'alimenter en Permanentence. Le moyenrouvé est d’ajouter un superensateur cellergy pouvant alimenter la mémoire pendant une journalée.

Deuxième type de mémoire: la mémoire MRAM

La mémoire vive statique magnétique (ذاكرة الوصول العشوائي المغناطيسية) stocke les données sans. Le changement d'état se fait en changeant l’orientation polaire des électrons (par effet tunnel notamment). Elle est très résistante aux radiations et aux hautes hautes. المزايا: - عدم تطاير المعلومات. - inusabilité ، puis ce quaucun mouvement électrique n'est engagé (التحمل لمدة 10 ^ 16 دورة محاضرة / كتاب!). - la consommation électrique est théoriquement moindre puisqu'il n'y a pas de perfe thermique due à la résistance des matériaux aux mouvements des électrons. - temps d’accès de 10 nanosecondes. - les débits sont de l'ordre du gigabit par seconde. - une excellente résistance aux radiations، omniprésentes dans un milieu spatial. تجارية خاصة بالماركة Everspin. - قدرة التخزين على الحد الأقصى من خلال مساعدة الأبطال المغنطيسية الواضحة للاضطراب في الخلايا الخلوية التي لا تخلو من عمليات التخزين.

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 lance le premier microcontrôleur à mémoire FRAM.

Leur use est destinée au SSD (Solid State Drive)، comme pour les mémoires non volatiles، les données n'ont pas besoin d'énergie pour être المحمية. الطرق: - une plus faible consommation d’électricité. - une plus grande speedité de lecture et d'écriture (temps d'écès de 100 nanosecondes contre 1 microseconde for la mémoire flash). - la posibilité d'être effacée et récrite un bien plus grand nombre de fois (التحمل لمدة 10 ^ 14 دورة محاضرات / أثاثات).المقومات: - قدرات التخزين بالإضافة إلى حدود - un coût de fabrication plus élevé، ~ 30 € / Mo

Les deux grandes familles de mémoires: Série (الصورة 1) et parallèle (الصورة 2)

Série: les mémoires séries ont pour avantage de permettre un get de place et de guarder la même config selon les modèles d'où leurليه finté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). لا تستخدم بطاقة ذاكرة التخزين المؤقت نوعًا من الذاكرة المؤقتة لأداء المهام في سوق العمل في BIOS من خلال بطاقات معينة من نوع FPGA.

Parallèle: Les mémoires parallèles sont très dans tous les domaines allant de la RAM pour 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 couldn't de récupérer en quelques ms tout le contenu de la mémoire de 1Mo. L'inconvénient هو صعب في سيارة intégrer دبابيس nombreux مختلفة عن نمط 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 pin de chip تمكين (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 adresses.

الخطوة 2: Mémoire Serial FRAM SPI

Mémoire Serial FRAM SPI
Mémoire Serial FRAM SPI
Mémoire Serial FRAM SPI
Mémoire Serial FRAM SPI

Câblage de la BeagleBone à la mémoire: Reliés au 3.3V: VDD، HOLD، WP A la masse: VSS MISO Relié à SO MOSI relé à SI CS Relié à CS

ملحوظة: L'avantage de ce type de mémoire SPI est que، peu importe le modèle ou la marque du fabricant de sem-Conducteurs، la config du boîtier reste la même ce qui n'est pas le cas des autres types de mémoires comme les مذكرات متوازية. De plus les datasheet de ces différentes mémoires indiquent que toutes fonctionnent de la même manière. Ainsi il est possible de commuter des mémoires de différents modèles sans without away at an مبرمج de nouveaux algorithmes.

لا يعفي Les pin HOLD et WP على 3.3 فولت: سيُلحَق لك تطبيقًا مفيدًا للتطبيقات ، ولا يسمح بالبرمجة. CES fonctionnalités auraient été utiles si l’on avait plusieurs mémoires SPI à piloter!

Afin de piloter la mémoire il faut d’abord étudier sa fiche technology disponible à l’adresse suivante:

Cette Fiche technology indique les cycles nécessaires pour lire et écrire dans la mémoire and ainsi réaliser un program permettant de les piloter.

الخطوة 3: دورات المسلسل FRAM

دورات المسلسل FRAM
دورات المسلسل FRAM
دورات المسلسل FRAM
دورات المسلسل FRAM
دورات المسلسل FRAM
دورات المسلسل FRAM
دورات المسلسل FRAM
دورات المسلسل FRAM

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) تحليل مسار المبعوث الخاص بـ MOSI de la Beaglebone à SI (Voir figure) 9)

- 8 بتات أولية ، Op-code de l'écriture (READ): 0000 0011 (0x03h) - 16 bits adresse ، même si cette mémoire n'en يعتبر que 11 car il s'agit d'une mémoire de 16Kb ((2 ^ 11) * 8 بت) il faut envoyer 16 بت سيارة cela permettra de pouvoir aussi piloter des mémoires 64Kb. - 8 بتات. محاضرة:

Analyze de la trame de lecture envoyée par MOSI de la Beaglebone à SI: (Voir Figure 10) - 8 bits premier de la lecture (WRITE): 0000 0010 (0x02h) - 16 bits adresse Analyze de la trame de lecture envoyée par SO à MISO de la Beaglebone: - 8 bits de données

الخطوة 4: كود بايلوتانت La Mémoire FRAM

Pour compiler ce program en langage C: $ gcc programme_spi.c –o spiPour utiliser ce program: $./spi add1 add2 data mode

Add1 (MSB) et Add2 (LSB) مراسل chacun à 8 bits de donnée ، تتوافق البيانات مع 8 بتات من دونه à écrire (mettre 0 si

مثال على ذلك:./spi 150 14210 2 écrit à l’adresse 16 bits 150 14 (0x96h، 0x0Eh) la donnée 210 (0xD2).

./spi 150 14 0 1 مضاءة في العنوان 150 14 (0x96h ، 0x0Eh)

الخطوة 5: Mémoire Parralèle

Mémoire Parralèle
Mémoire Parralèle
Mémoire Parralèle
Mémoire Parralèle
Mémoire Parralèle
Mémoire Parralèle
Mémoire Parralèle
Mémoire Parralèle

Pour ce projet j'ai utilisé la mémoire SRAM ALLIANCE AS6C1008 128 كيلو بايت * 8 بت (voir schéma)

تكوين du boitier: 17 العناوين: A0-A16 8 البيانات: D0-D7 2 تمكين الشريحة: CE # -CE2 2 خاصية الكتابة والإخراج: WE # -OE # 2 VCC (3.3V) ، VSS (GND) 1 non connecté: نورث كارولاينا

ملحوظة: La Disposition des pin 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 requestez sans doute pourquoi j'ai sauté Certains GPIO dans les lignes d'adresses et data، 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 fixage (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 technology disponible à l’adressesuivante:

Cette Fiche technology indique les cycles nécessaires pour lire et écrire dans la mémoire et ainsi réaliser notre program program. 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 patchement 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 é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 partulier avec les temps minimaux. Le cycle d’écriture revient a modifier l’état des GPIOs. La base du code is celle qui qui permet de faire clignoter une LED en ajoutant des temporisations précise aux durées des cycles imposées par le constructeur. فعّالة في العمل المباشر مع مصابيح LED تتوافق مع إنشاء دورات تم إنشاؤها وتكوينها لمؤسسات GPIOs.

Le Cycle de lecture quant à lui include en la récupération de l’état des GPIO، comme pour détecter l’état d’on bouton poussoir.

الخطوة 6: دورات Mémoire Parralèle

دورات Mémoire Parralèle
دورات Mémoire Parralèle
دورات Mémoire Parralèle
دورات Mémoire Parralèle
دورات Mémoire Parralèle
دورات Mémoire Parralèle
دورات Mémoire Parralèle
دورات Mémoire Parralèle

Cycle d'écriture (voir الشكل 1 ، 2):

قم بصب بياناتك في ذاكرة الوصول العشوائي لأدوات الدبابيس الموجودة في الشريحة الصغيرة التي تعمل على تمكين CE à l'état haut et l'instruction اكتب تمكين WE. Une fois cela effectuer mettre les pin des données aux valeurs souhaitées et le tour est joué (Mais care tout de même à bien respecter les temporisations! ~ 100ns)

دورة المحاضرة (voir الشكل 3 ، 4):

قم بصب بياناتك في ذاكرة الوصول العشوائي لأدوات الدبابيس الموجودة في رقاقة valeurs souhaitées puis d'activer les entrées chip التي تمكن CE à l'état haut et l'instruction Output من تمكين OE. Une fois cela effectué on récupère sur les Entrée GPIO de la BeagleBone les valeurs se trouble à cette adresse.

الخطوة 7: كود Pilotant 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 memoire

$./memoire إضافة 1 إضافة 2 بيانات 1 بيانات 2 وضع فتحة 1 فتحة 2

الوضع: 1 محاضرة ، 2 Ecriture

Le code étant créer pour piloter deux mémoires il y a deux "slots"، mettre à 1 pour utiliser.

مثال: $./memoire 120140 21010 2 1 0

écrit à l'adresse 120140 (hex 16 bits) les données 20210 sur la mémoire sur le slot 1.

مثال: $./memoire 120140 0 0 1 1 1

lit à l'adresse 120140 les données sur la mémoire du slot 1 et 2.

الخطوة 8: دعم صب المذكرات

دعم Pour Mémoires
دعم Pour Mémoires
دعم Pour Mémoires
دعم Pour Mémoires
دعم Pour Mémoires
دعم Pour Mémoires
دعم Pour Mémoires
دعم Pour Mémoires

Je vous fournit dans les photos les PCB de support mémoire sur lequel vous pourrez vous inspirer pour vos réalisations. Si vous voulez réaliser un système de mémoire قابل للتبديل comme moi veillez bien à câbler correction vos mémoires en utilisant toujours le même ordre pour les pin.

إذا كانت لديك أسئلة حول الأسئلة التي يمكنك الحصول عليها من خلال الأسئلة التي يمكنك الحصول عليها من خلال هذا البرنامج.

موصى به: