Mục lục:
- Bước 1: Các loại Quelques De Mémoires
- Bước 2: Mémoire Serial FRAM SPI
- Bước 3: Chu kỳ KHUNG nối tiếp
- Bước 4: Mã Pilotant La Mémoire FRAM
- Bước 5: Mémoire Parralèle
- Bước 6: Chu kỳ Mémoire Parralèle
- Bước 7: Code Pilotant La Memoire Parraléle
- Bước 8: Hỗ trợ Pour Mémoires
Video: Phần mở rộng Mémoire Pour BeagleBone Black: 8 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:33
Je vous présenter dans cet directable un de mes projet qui obsait à piloter des mémoires de différents các loại afin de pouvoir tester leur fonctionnement dans des condition spatiales (enceinte radiative) et derouver le taux d’erreurs engendré par cet môi trường đổ chaque loại de mémoire. Vous pouvez aussi useiser les données de ce projet pour étendre la mémoire de votre BeagleBone, créer une clé USB ou simplement pour étudier leur fonctionnement.
Bước 1: Các loại Quelques De Mémoires
Voici une listeustive des différents styles de mémoires useisés dans ce projet avec leurs avantages ethereumvénients:
Loại cao cấp de mémoire: la mémoire SRAM
La mémoire vive statin (ou Bộ nhớ truy cập ngẫu nhiên tĩnh) est un type de mémoire vive useisant des bascules pour mémoriser les données. Sự tương phản à la mémoire dynamicique, son contenu n’a pas besoin d’être rafraîchit périodiquement. Elle reste cependant dễ bay hơi: elle ne peut se passer d'alimentation sous peine de voir ses thông tin effacées irrémédiablement!
Avantages: - la SRAM est rapide (temps d'accès 6 à 25 ns) - peu coûteuse (4 € / Mo). Inconvénients: - besoin d'être alimenté en permanence pour ne pas perdre ses données, aussi ce type de mémoire imp d'ajouter à notre carte mémoire un moyen de l'alimenter en permanence. Mặt dây chuyền Le moyen domainsvé est d’ajouter un super condensateur Cellergy pouvant alimenter la mémoire une journée.
Deuxième type de mémoire: la mémoire MRAM
La mémoire vive stétique (Bộ nhớ Truy cập Ngẫu nhiên Từ tính) stocke les données sans preferir besoin d’être alimentée. Le changement d'état se fait en changeant l’orientation polaire des électrons (giấy ghi chú đường hầm par effet). Elle est très résistante aux radiations et aux hautes nhiệt độ. Avantages: - la non-volatilité des thông tin. - inusabilité, puis ce qu’aucun mouvement électrique n'est engagé (bài giảng về sức bền de 10 ^ 16 chu kỳ / écriture!). - la consommation électrique est théoriquement moindre puisqu'il n'y a pas de perte thermique do à la résistance des matériaux aux mouvements des électrons. - temps d’accès de 10 nano giây. - les débits sont de l'ordre du gigabit par seconde. - Résistance aux radiations, omniprésentes dans un milieu spatial. Inconvénients: - coûteuse (~ 35 € / Mo) car encore en phase de développement (thương mại hóa de masse du produit prévue en 2018!) mais on peut s'en procurer chez Digikey Commercialisé sous la marque Everspin.- Capé de stockage est très limitée do aux champs magnétiques qui risquent de perturber les cellules voisine si elles sont trop proches les unes des autres.
Troisième type de mémoire: la mémoire FRAM
La mémoireFRAM (Bộ nhớ truy cập ngẫu nhiên bằng điện) est un type de mémoire d'osystemur không bay hơi encore à l'état de recherche et développement.
Elle est similaire à la mémoire DRAM à laquelle on ajouté une couche ferro-électrique pour obtenir la non volatilité. Ngày mai 2011, Texas Instruments lance le premier microcontrôleur à mémoire FRAM.
Sử dụng Leur est destinée au SSD (Solid State Drive), bắt đầu sử dụng ổ cứng thể rắn không bay hơi, les données n'ont pas besoin d'énergie pour être bảo tồn. Avantages: - une plus faible consommation d’électricité. - une plus grande quickité de Presentation et d'écriture (temps d'accès de 100 nanosecondes contre 1 microseconde pour la mémoire flash). - la Possibilité d'être effacée et réécrite un bien plus grand nombre de fois (sức bền de 10 ^ 14 chu kỳ bài giảng / trang trí).
Les deux grandes familles de mémoires: Série (ảnh 1) et parallèle (ảnh 2)
Série: 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 seeké 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 bit (50ns * 8 = 400ns pour 8 bit). Ce type de mémoire est donc useisé lorsque le temps d’accès aux données à peu d'importance com lors du chargement d'un BIOS dans certaines cartes de type FPGA.
Parallèle: Les mémoires parallèles sont très useisées 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 thông tin, nous sommes donc có khả năng de récupérer en quelques ms tout le contenu de la mémoire de 1Mo. L'inconvénient est sa khóé à intégrer car les nombreux ghim 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 lespin 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 styles de mémoires seul change le moyen d’accès aux données et adresses.
Bước 2: Mémoire Serial FRAM SPI
Câblage de la BeagleBone à la mémoire: Belieés au 3.3V: VDD, HOLD, WP A la masse: VSS MISO Relé à SO MOSI Relé à SI CS Relé à 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 -uctoreurs, la configuration du boîtier reste la même ce qui n'est pas le cas des autres type de mémoires com les mémoires parallèles. De plus les datasheet de ces différentes mémoires indquent que toutes fonctionnent de la même manière. Ainsi il est could de commuter des mémoires de différents modèles sansosystems à Lập trình viên de nouveaux Thuật toán.
Les ghim HOLD et WP sont Relés au 3.3V: si cela empêche l’utilisateur d’utiliser ces fonctionnalités, cela permet de originiter la Programmation. Cependant 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 skill disponible à l’adresse suivante:
Kỹ thuật Cette fiche indque les différents cycle nécessaires pour lire et écrire dans la mémoire et ainsi réaliser un program permettant de les piloter.
Bước 3: Chu kỳ KHUNG nối tiếp
Hệ sinh thái:
Avant d'écrire dans la mémoire il faut envoyer une trame d'accès à L'écriture (WREN) 0000 0110 (0x06h) (Voir hình 5) Analyze de la trame d'écriture envoyée par MOSI de la Beaglebone à SI (Voir figure 9)
- 8 bit cao cấp, mã Op-code de l'écriture (ĐỌC): 0000 0011 (0x03h) - 16 bit adresse, même si cette mémoire n'en coière que 11 car il s'agit d'une mémoire de 16Kb ((2 ^ 11) * 8bits) il faut envoyer 16 bit car cela permettra de pouvoir aussi piloter des mémoires 64Kb. - 8 bit de données. Bài học:
Analyze de la trame de speech envoyée par MOSI de la Beaglebone à SI: (Voir hình 10) - 8 bit đầu, Op-code de la Lecture (WRITE): 0000 0010 (0x02h) - 16 bit adresse Phân tích de la trame de bài giảng envoyée par SO à MISO de la Beaglebone: - 8 bit de données
Bước 4: Mã Pilotant La Mémoire FRAM
Đổ trình biên dịch ce chương trình vi ngôn ngữ C: $ gcc programme_spi.c –o spiPour chương trình ce tận dụng: $./spi add1 add2 data mode
Thông tín viên của Add1 (MSB) et Add2 (LSB) chacun à 8 bit de donnée, dữ liệu tương ứng à 8 bit de données à écrire (mettre 0 si giảng) Chế độ tương ứng à l’écriture (= 2) ou la giảng (= 1).
Exemple d’utilisation:./spi 150 14 210 2 écrit à l’adresse 16 bit 150 14 (0x96h, 0x0Eh) la donnée 210 (0xD2).
./spi 150 14 0 1 lit à l'adresse150 14 (0x96h, 0x0Eh)
Bước 5: Mémoire Parralèle
Pour ce projet j'ai useisé la mémoire SRAM ALLIANCE AS6C1008 128Kb * 8 bit (voir schéma)
Cấu hình du boitier: 17 Địa chỉ: A0-A16 8 Dữ liệu: D0-D7 2 Kích hoạt chip: CE # -CE2 2 Cho phép ghi và đầu ra: WE # -OE # 2 VCC (3.3V), VSS (GND) 1 non connecté: NC
NB: La disposition des ghim 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é!)
Chú ý: Vous vous demandez 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 à useiser fixement (me faisant perdre au via 2 semaines car je penais 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 skill disponible à l’adressesuivante:
Kỹ thuật Cette fiche indque les différents cycle nécessaires pour lire et écrire dans la mémoire et ainsi réaliser notre program. Afin d’écrire dans la mémoire il fautpecter le cycle imposé par les constructeurs, qui sont tous les mêmes pour chacune des mémoires effisées. Ainsi n'importe quelle mémoire 64Kb peut fonctionner avec notre program (si Correction câblé:)) Cependant les temps entre les cycle peuvent varier d'une mémoire à une autre, le cycle le plus long (100ns) des mémoires useisées étant retenu car il s'adaptera à toutes les mémoires. Ainsi les temps d’écriture et Lectures minimums Notesncés par les constructeurs ne seront jamais takesints car imposés par la mémoire la plus lente. La durée des cycle est définie dans le mã. Le seul moyen d’aller d’atteindre la vitesse maximale et de Programmer les cycle pour une mémoire en specific avec les temps minimaux. Le cycle d’écriture Reveent à modifier l’état des GPIOs. La base du code est celle qui permet de faire clignoter une LED en ajoutant des temporisations précises tương ứng aux durées des cycle imposées par le constructeur. En effet l’action de faire clignoter une LED tương ứng à la création de cycle d’état haut et bas pour les GPIOs.
Le cycle de speech quant à lui Conse en la récupération de l’état des GPIO, com pour détecter l’état d’un bouton poussoir.
Bước 6: Chu kỳ Mémoire Parralèle
Cycle d'écriture (voir hình 1, 2):
Pour écrire dans la mémoire il Suffit de mettre lespin d'adresse aux valeurs souhaitées puis d'activer les entrées chip enable CE à l'état haut et l'instruction Viết cho phép WE. Une fois cela effectuer mettre les ghim des données aux valeurs souhaitées et le tour est joué (Mais chú ý tout de même à bien tôn trọng les temporisations! ~ 100ns)
Bài giảng chu kỳ (voir hình 3, 4):
Pour écrire dans la mémoire il enoughit de mettre lespin d'adresse aux valeurs souhaitées puis d'activer les entrées chip cho phép CE à l'état haut et l'instruction Đầu ra cho phép OE. Un fois cela effectué trên récupère sur les entrée GPIO de la BeagleBone les valeurs serouvant à cette adresse.
Bước 7: Code Pilotant La Memoire Parraléle
Ce code permet de piloter 2 mémoire parallèles indépendamment l'une de l'autre et s'utilise com ceci:
biên dịch: $ gcc -lm programme_memoire.c -o memoire
$./memoire thêm 1 thêm 2 data1 data2 mode slot1 slot2
chế độ: 1 bài giảng, 2 bài giảng
Le code étant créer pour piloter deux mémoires il y a deux "slot", mettre à 1 pour expiser.
Ví dụ: $./memoire 120 140 20 210 2 1 0
écrit à l'adresse 120 140 (hex 16 bit) les données 20 210 sur la mémoire sur le khe 1.
Ví dụ: $./memoire 120 140 0 0 1 1 1
lit à l'adresse 120 140 les données sur la mémoire du slot 1 et 2.
Bước 8: Hỗ trợ Pour Mémoires
Je vous fournit dans les ảnh les PCB de support mémoire sur lequel vous pourrez vous inspir pour vos réalisations. Si vousosystemz réaliser un système de mémoire có thể hoán đổi được cho nhau bởi vì tôi có thể thay thế cho nhau veillez bien à câbler sửa chữa vos mémoires en useisant toujours le même ordre pour les ghim.
Si vous avez des câu hỏi remarques n'hésitez pas tout avis est le bienvenu, en espérant vous suggest aveir aidé!
Đề xuất:
Sử dụng phần mở rộng lồng ngực của Hope để tìm Công việc chưa hoàn chỉnh của Sắc lệnh đền thờ trong cây gia đình của bạn về Tìm kiếm gia đình: 11 bước
Sử dụng phần mở rộng Rương của Hope để Tìm công việc pháp lệnh đền thờ chưa hoàn chỉnh trong cây gia đình của bạn trên Tìm kiếm gia đình: Mục đích của tài liệu hướng dẫn này là để trình bày cách tìm kiếm gia phả của bạn trong Tìm kiếm gia đình cho tổ tiên có công việc pháp lệnh đền thờ chưa hoàn thành bằng cách sử dụng phần mở rộng Rương của hy vọng. Sử dụng Hope's Chest có thể tăng tốc đáng kể tìm kiếm của bạn cho
Phần mở rộng cho bất cứ phần mềm DJ nào bạn muốn!: 6 bước
Phần mở rộng cho Dù bạn muốn phần mềm DJ nào !: Không phải ai cũng có thể tham gia vào DJ ngày một và phải chuẩn bị sẵn sàng tất cả các máy trộn, bàn xoay và bàn phím nóng vào ngày đầu tiên, nhưng hãy thực tế ở đây: trộn trên máy tính xách tay thật tệ. Đó là những gì điều này nhằm mục đích giải quyết tất cả các mối quan tâm về tài chính của bạn lại
Ăng-ten để mở rộng phạm vi mở rộng cổng: 6 bước (có hình ảnh)
Ăng-ten để mở rộng phạm vi mở rộng cổng: Khi tuyết rơi thực sự sâu trên Núi Hood, sẽ có rất nhiều trò chơi thú vị khi trượt tuyết, đi xe trượt tuyết, xây pháo đài bằng tuyết và ném những đứa trẻ xuống boong vào lớp bột sâu. Nhưng những thứ bóng bẩy không thú vị cho lắm khi chúng tôi cố gắng quay lại đường cao tốc và mở cổng để lấy
Ứng dụng của một nút có thể mở rộng với phản hồi rung: 7 bước (có hình ảnh)
Ứng dụng của nút có thể mở rộng với phản hồi rung: Trong hướng dẫn này, trước tiên chúng tôi sẽ chỉ cho bạn cách sử dụng Arduino Uno để điều khiển động cơ rung thông qua nút mở rộng. Hầu hết các hướng dẫn về nút nhấn đều liên quan đến nút trên breadboard vật lý, trong khi trong hướng dẫn này, nút có
Bảng mở rộng thành phần Tester: 3 bước
Bảng mở rộng Bộ kiểm tra thành phần: Dự án này là bảng mở rộng PCB cho máy kiểm tra linh kiện điện tử giá rẻ. Có rất nhiều biến thể của thiết bị này trên Ali Express. Tôi dựa trên bo mạch của mình dựa trên cái này: GM328A V1.11 Tính năng của bo mạch mở rộng: Pin Li-PO thay thế cho pin 9V. 1 ô Li