Anonim

En outre, le concepteur de chipset consacre beaucoup de temps à la conception de nombreux contrôleurs de mémoire et interfaces qui se connectent au chipset. Un sous-système de mémoire prêt à l'emploi, qui unifie et gère les différents types de mémoire et interfaces requis, peut réduire considérablement la conception, le temps de développement et le coût du produit final du sous-système de mémoire.
Dans les systèmes embarqués actuels, plusieurs types de mémoires sont nécessaires pour le code de démarrage du système, le code du système d'exploitation et des applications et les données utilisateur. Certaines de ces mémoires ont des saveurs volatiles et non volatiles.

Par exemple, un concepteur de système ou de jeu de puces peut inclure une mémoire flash NOR faible à haute densité pour le code de démarrage ou un code système et une application d'exécution en place (XIP), une mémoire flash NAND pour des données et une RAM pour des données et / ou un code pendant l'exécution. Un système complet visant à simplifier la tâche du concepteur devrait inclure tous les types de mémoires et d’interfaces dont le concepteur aurait besoin.

Technologie et interface de mémoire en constante évolution

n

La technologie de la mémoire évolue constamment pour répondre aux exigences des produits sur le marché des solutions intégrées. Au cours des dernières années, de nombreuses technologies volatiles et non volatiles ont été introduites pour répondre aux exigences de vitesse, de taille et de coût des systèmes et applications intégrés.
Les technologies volatiles encore utilisées comprennent les mémoires SRAM, DRAM, PSRAM, DDR DRAM et DDR2 DRAM, qui utilisent plusieurs interfaces différentes.

Dans le domaine de la mémoire non volatile, nous voyons des technologies telles que ROM, EPROM, EEPROM, flash NOR et NAND qui s’adressent à différents segments du marché et maintenant à PCRAM (mémoire à changement de phase, PCM, PRAM), FRAM (RAM ferroélectrique)., FeRAM) et RRAM (RAM résistive) sont autour du coin.
Malheureusement, la plupart de ces technologies ont leur propre interface et fonctionnalité qui ne permettent pas une transition facile entre elles.

Par exemple, SRAM et PSRAM ont des interfaces très similaires, tout comme la famille de DRAM DDR. Cependant, le passage de SRAM à DRAM nécessite une modification de l'interface et du contrôleur.
Les ROM, NOR flash et NAND flash ont des interfaces et des capacités très différentes. Le flash NOR convient parfaitement aux opérations de lecture principales et le flash NAND peut effectuer des opérations d’écriture beaucoup plus rapides.

Dans de nombreuses applications intégrées, ces deux fonctionnalités sont nécessaires, ce qui rend la conception du sous-système de mémoire plus complexe. En outre, pour tirer parti de la capacité NAND et fournir une capacité XIP, la complexité du sous-système de mémoire est augmentée par l’ajout d’un certain type de RAM. Par conséquent, les concepteurs de systèmes et de jeux de puces doivent gérer un certain nombre de mémoires différentes pour diverses raisons.

Pour chaque conception de système nécessitant plusieurs types de mémoire, plusieurs contrôleurs de mémoire et interfaces doivent être conçus et repensés à mesure que la technologie évolue.

Aujourd'hui, dans de nombreux périphériques intégrés, on trouve la mémoire SRAM ou DRAM utilisée comme mémoire principale, NI pour le code de démarrage et le code d'application, et la mémoire NAND pour le stockage de données, et souvent aussi du code. Pour chaque type de mémoire utilisé dans le système, un contrôleur de mémoire et une interface doivent être conçus. Malheureusement, ces interfaces et contrôleurs doivent souvent être repensés à mesure que la technologie évolue ou que de nouveaux types de mémoire sont introduits.

Stabilité de la conception avec les changements de technologie de la mémoire

Ce serait bien si les concepteurs de système traitaient avec un seul paquet de mémoire qui fournissait et gérait tous les types de mémoire nécessaires avec une seule interface. Et une solution qui simplifierait la tâche de conception, réduirait les coûts de conception et de reconception et améliorerait le délai de mise sur le marché.
C'est possible dans une large mesure. Construire une boîte noire avec une interface unique comprenant divers types de mémoires, nécessaires à la plupart des systèmes embarqués, serait un moyen de résoudre le problème.

L’hôte fournirait les informations requises, telles que les opérations de lecture ou d’écriture, l’adresse, le type ou le numéro de mémoire et éventuellement la vitesse de livraison. La boîte noire interpréterait les informations, générerait la séquence de commandes appropriée, accéderait à la mémoire appropriée et compléterait opération.

Les facteurs importants dans la conception du sous-système de mémoire sont la bande passante, la latence, la consommation électrique, le coût et le facteur de forme.

À chaque conception, ces facteurs sont échangés les uns contre les autres et contre le calendrier de développement. Ces compromis nécessitent que l'architecte système étudie de manière très détaillée diverses alternatives.

L'architecte système peut économiser beaucoup de temps et d'efforts si des sous-systèmes de mémoire satisfaisant les exigences du système sont facilement disponibles. Cela offrirait également aux concepteurs de jeux de puces le luxe de concevoir une interface unique capable d'interagir avec tous les types de mémoire requis et de les gérer.

Un pour tous

Une réponse idéale serait l'équivalent couteau suisse de la mémoire. Les entreprises du système pourraient acheter ce qui est nécessaire et le configurer pour leur application. Il serait inutile de concevoir plusieurs types de mémoire, interfaces et contrôleurs.

Les sociétés système n'auraient besoin que de rechercher le sous-système de mémoire gérée (MMS) qui satisferait leurs besoins. Ce MMS doit pouvoir être configuré pour s’adapter à un certain nombre de marchés et d’applications, car les exigences varient selon les produits et les marchés. Par exemple, les besoins en mémoire de tous les téléphones mobiles peuvent être regroupés dans un seul MMS, mais la configuration serait différente entre les téléphones polyvalents et les téléphones intelligents, car ces derniers ont des applications plus exigeantes telles que la vidéo et Internet.

La capacité de configuration est importante car les types de mémoire, la taille et la vitesse varient selon les applications. La configurabilité permet au concepteur d'adapter le système à l'application.
Malheureusement, dans de nombreuses applications, les informations comportementales sont insuffisantes. Dans ces cas, le sous-système de mémoire configurable est très tolérant et lui permettra d'être adapté à l'application pour mieux répondre aux exigences du système.

La fourniture de plusieurs types de mémoire dans un même progiciel simplifie la conception du système et accélère la mise sur le marché.

Un seul MMS devrait être moins coûteux et plus petit en raison d'une réduction du nombre de puces, d'une mise en page plus efficace et de moins de broches. Il devrait consommer moins d'énergie, car toutes les mémoires sont prises en compte dans la conception et peuvent partager les ressources requises. Il devrait également offrir de meilleures performances lorsque la configurabilité est utilisée pour ajuster la conception à l'application.