Design of Embedded Minimum System Based on MC9328MX1

Publisher:心满愿望Latest update time:2021-03-02 Source: eefocusKeywords:MC9328MX1 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

introduction

Embedded system is a professional computer system with practical application as the core, and has strict requirements on function, reliability, cost, volume and power consumption. With the rapid development of embedded system related technologies, embedded system functions are becoming more and more powerful, and application interfaces are becoming more and more abundant. Designing specific embedded minimum system and application system according to the needs of practical applications is the ability that embedded system designers should possess. Due to the consistency of the structure of ARM embedded system and the versatility of peripheral circuits, the design principles and methods of embedded minimum system using ARM core are basically the same. This article introduces the general method of ARM embedded minimum system design based on MC9328MX1 chip.


1 MC9328MX1 Overview

MC9328MX1 is Motorola's Dragon Ball MX1 processor based on ARM920T. MC9328MX1 contains a 16/32bit ARM920T microprocessor core designed by ARM. The ARM microprocessor with RISC architecture has the characteristics of small size, low power consumption and high cost performance. It is mainly used in advanced information processing equipment, smart phones, web browsers, digital multimedia players, laptops based on the popular Palm OS operating platform, and wireless communication transmitting and receiving equipment.


The structural block diagram of MC9328MX1 is shown in Figure 1.


The architecture of MC9328MX1 is as follows: full 16/32bit RISC architecture, containing the efficient and power-saving ARM920T processor core, a high-performance RISC engine that supports 16bit Thumb and 32bit ARM instruction sets, supports big and little endian modes, the internal architecture is big endian mode, the external memory can be divided into big and little endian modes, a JTAG interface-based solution, a boundary scan interface, and is used for embedded multimedia application integration systems.


The system-related features of MC9328MX1 are: integrated 16KB instruction cache and 16KB data cache, support for virtual address translation memory management unit (VMMU), support for ROM/SRAM, Flash memory, DRAM and external I/O to operate in 8/16/32bit mode, support for EDO/conventional or SDRAM memory, use of ARM advanced microcontroller bus architecture (AMBA), that is, SoC multi-master bus interface, use of reduced advanced high-performance bus (R-AHB) to communicate with slower on-chip peripherals, and can connect 15 external devices at the same time.


Although there are many types of embedded processor chips and their pins are complicated, their distribution is regular according to their respective functional characteristics. In the design of embedded minimum hardware systems, it is necessary to pay attention to distinguishing the types of processor chip pins and carefully analyzing and studying the functions of key pins to ensure the normal operation of the minimum system.


MC9328MX1 adopts MAPBGA package, with 256 pins in total. The pins of MC9328MX1 can be divided into 5 categories: power supply, ground, input (I), output (O), input/output (I/O). In addition to the nearly 40 power and ground wires, as well as the address bus, data bus and general I/O interface, dedicated module SPI, UART, I2C, LCD and other interfaces, there are not many pins that need to be carefully studied. The power supply and ground terminal are one of the most basic conditions to ensure the normal operation of the system. Some input type pins must be treated carefully during system design, because some level signals directly affect the normal operation of MC9328MX1. Output type pins are mainly used for control or communication with peripherals. They are actively sent by MC9328MX1 and will not have much impact on the operation of MC9328MX1 itself. Input/output type pins are bidirectional data transmission channels between MC9328MX1 and peripherals.


2 Embedded Minimum System

A system centered on an ARM core embedded microprocessor and equipped with fully matched Flash circuits, SDRAM circuits, JTAG circuits, power supply circuits, crystal oscillator circuits, reset signal circuits, and system bus expansion, which ensures the normal operation of the embedded microprocessor, can be called an embedded minimum system.


The hardware structure diagram of the embedded minimum system is shown in Figure 2.



The hardware functions of the embedded small system are as follows:


Microprocessor: MC9328MX1 is the system working and control center;


Power supply circuit: provides the required 1.80V operating voltage for the core part of MC9328MX1 and 3.0V operating voltage for some peripheral chips;


Crystal oscillator circuit: provides working clock for microprocessor and other circuits, and the MC9328MX1 chip in the system uses 32KHz or 32.768KHz passive crystal oscillator;


Flash memory: stores embedded operating systems, user applications, or other user data that needs to be saved after the system loses power;


SDRAM: As the main area when the system is running, the system and user data and stack are all located in this memory;


Serial interface: used for short-distance bidirectional serial communication between MX1 system and other application systems;


JTAG interface: access all components inside the chip, and debug and program the system through this interface;


System bus expansion: Bring out the address bus, data bus and necessary control bus to facilitate users to expand peripheral circuits according to their specific needs.


3. Selection of minimum system hardware and design of unit circuits

3.1 Power Circuit Design

The power supply circuit is the basis for the normal operation of the entire system. The designed power supply circuit must meet the system's requirements for the circuit performance indicators. The core part of the MC9328MX1 requires a 1.80V operating voltage, and some peripheral chips require a 3.30V operating voltage. According to the requirements, the 5V DC voltage is input and converted by DC-DC to provide the system with 1.80V and 3.30V operating voltages respectively. Different systems select devices to design power supply circuits based on actual power consumption. The power supply circuit is shown in Figure 3.



3.2 Crystal Oscillator Circuit and Reset Circuit Design

The crystal oscillator circuit provides the working clock for the microprocessor and other circuits. It is an important circuit that the system must have. The MC9328MX1 uses a 32KHz passive crystal oscillator. After the 32KHz crystal oscillator frequency is input into the MC9328MX1, it is multiplied by the PLL (phase-locked loop) to reach 16.384MHz and input into the system PLL and MCU PLL. The MCU PLL multiplies the input 16.384MHz to a maximum of 192MHz and provides it to the ARM core. The system crystal oscillator circuit is shown in Figure 4.


The reset circuit mainly completes the power-on reset of the system and the user's key reset function when the system is running. This system uses a relatively simple RC reset circuit. The reset circuit is shown in Figure 5.


3.3 Flash memory interface circuit design

Flash memory is usually used in the system to store program code, constant tables, and some data that needs to be saved after the system power is off. Flash interface circuit is a crucial circuit in the minimum system design.


Commonly used Flash memories have a data width of 8bit/16bit and an operating voltage of 3.3V. The main manufacturers are Intel, Atmel, Hyundai, etc. Similar devices they produce generally have the same electrical characteristics and packaging forms and can be selected according to needs.


In order to give full play to the performance advantages of 32-bit MC9328MX1, a 32-bit data width Flash memory chip is directly used. You can also use two 16-bit data width Flash memory chips in parallel to build a 32-bit Flash memory system. The construction method of the 16-bit Flash memory system is similar to that of the 32-bit Flash memory system. This system uses two 28F320J3A chips to form a 32-bit Flash memory. The 32-bit Flash memory system is shown in Figure 6.


Two 28F320J3A chips, one of which is high 16 bits and the other is low 16 bits, are configured as a whole to the CS0 space of the MC9328MX1 peripheral interface module. Connect the #CS of the MC9328MX1 to the CE0 end of the two 28F320J3A chips, and ground CE1 and CE2. The address buses [A21-A1] of the two 28F320J3A chips are connected to the address bus [A22-A01] of the MC9328MX1, and the data bus of the low 16 bits chip is connected to the MC9328MX 1's low 16-bit data bus [D15-D00] is connected, and the data bus of the high 16-bit chip is connected to the high 16-bit data bus [D31-D16] of MC9328MX1; the RP# of the two 28F320J3A pieces are connected to VCC; the OE of the two 28F320J3A pieces are connected to #OE of MC9328MX1; the WE of the two 28F320J3A pieces are connected to #EB of MC9328MX1; the BYTE of the two 28F320J3A pieces are pulled up to make it work in word mode.


3.4 SDRAM Interface Circuit Design

Compared with Flash memory, although SDRAM does not have the feature of power-off data retention, its access speed is much higher than Flash memory, and it has read/write properties. SDRAM is mainly used as program running space, data and stack area in the system. Therefore, SDRAM interface circuit must be highly valued in the minimum system design.


Currently, the commonly used SDRAM has a data width of 8bit/16bit and an operating voltage of 3.3V. The main manufacturers are Samsung, HYUNDAI, Winbond, etc. If the same type of devices have the same electrical characteristics and packaging form, they can be used interchangeably. However, when using SDRAM, you must pay attention to whether the ARM chip has an independent SDRAM refresh control logic. If it does, it can be directly connected to the SDRAM interface. If not, it cannot be directly connected to the SDRAM.


According to the system requirements, a 16-bit or 32-bit SDRAM memory system can be constructed. This system uses two K4S281632 chips in parallel to construct a 32-bit SDRAM memory system. A single K4S281632 chip has a 16-bit data width and a capacity of 16MB. The two chips have a total of 32MB of SDRAM space, which can meet the operating requirements of embedded operating systems and various more complex operations. The circuit of using two K4S281632 chips to construct a 32-bit SDRAM system is shown in Figure 7.

[1] [2]
Keywords:MC9328MX1 Reference address:Design of Embedded Minimum System Based on MC9328MX1

Previous article:Design and development of RFID low-power electronic tags and handheld readers
Next article:Design of control system for automatic guided vehicle in logistics center

Recommended ReadingLatest update time:2024-11-16 14:28

ARM low power consumption current is too large summary
1Recently, we are preparing to reduce the power consumption to 14uA (automotive grade) (it was previously 3.3uA). 2 Commonly used ones are STOP Mode and Standby Mode. 3But currently there is still 3.3mA. 4 Next, we will start with the MCU and gradually troubleshoot
[Microcontroller]
ARM low power consumption current is too large summary
ARM Basic Learning-Cache and Write Buffer
Cache Introduction The CPU frequency can reach 200MHZ, while the main memory of general performance uses DRAM. Its storage cycle is only 100ns-200ns. The performance of the main storage will affect the performance of the entire system. The cache and write buffer are located between the main storage area and the CPU,
[Microcontroller]
ARM Basic Learning-Cache and Write Buffer
Scatter loading in ARM startup
Scatter loading effect: Code can be put into different storage spaces. 5G computers, electronics professional book sharing. Link: https://pan.baidu.com/s/1y8BnUlGmiJMujLlTyrhznA Extraction code: j9na 1. Basic concepts Before understanding scattered loading files, you first need to understand Code, RO-Data, RW-Data,
[Microcontroller]
A design scheme of navigation terminal based on ARM
  0 Introduction   A beacon is the abbreviation of a navigation mark. It is a mark indicating the direction, boundary and obstacles of a waterway, and provides basic guarantee for the safe navigation of ships. The beacon terminal measures the working status of the beacon light (voltage, current, number of available
[Microcontroller]
A design scheme of navigation terminal based on ARM
ARM9-based addressing mode
What is addressing: the method of addressing the address of the operand specified in the processor instruction system; or the method by which the operand is found; Instructions and instruction formats ARM instruction format:  Opcode { Condition } {S} Destination register , First operand {, Second operand}  : The con
[Microcontroller]
ARM9-based addressing mode
ARM assembly instruction set 1
(Assembly) instructions are mnemonics for CPU machine instructions. After compilation, they will produce a string of machine codes consisting of 0011, which can be read and executed by the CPU. (Assembly) Pseudo-instructions are not instructions in essence (they are just written in the code together with instruction
[Microcontroller]
Homemade and cheap Arm9 development platform
Abstract: Arm9-based microcontrollers have been widely used in various consumer electronic products due to their low price and superior performance. Mastering the development skills of Arm9 microcontrollers has become an urgent requirement for embedded system developers. However, due to the high price of Arm9 developm
[Microcontroller]
Homemade and cheap Arm9 development platform
Some methods of developing ARM Linux programs using NFS services
Simple NFS Configuration NFS is a simple way to achieve communication access between two machines. In the embedded Linux experiment, we configure NFS to achieve access between the PC and the experimental box ARM-Linux platform. The principle is to start the LFS service in the Linux of the PC, set up a shared di
[Microcontroller]
Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号