|
||||||
|
||||||
![]() Mitsubishi M16C |
|
View block
|
|
The register-based M16C CPU has two banks of registers, each comprised of six 16-bit general-purpose registers and one frame-based register. You can use two of the 16-bit registers as four 8-bit registers and two others as address registers. The CPU also has a static base register, a flag register, a program counter, and stack pointers. A separate, dedicated stack pointer supports interrupt routines, and another stack pointer is for user programs. The M16C contains a hardware multiplier circuit that performs a 16X16-bit multiply in five cycles.
The CPU supports a multiplexed or demultiplexed external bus. You can set up the address bus to access the 1-Mbyte address space linearly or divided into four chip-select areas. In the multiplexed mode, the M16C's data bus is 8 bits wide; the demultiplexed bus can be 8 or 16 bits wide.
Power management: The M16C can use a 32-kHz oscillator in addition to the main clock-oscillation circuitry. Low-frequency, subclock, wait, and stop power-saving modes support the CPU. The low-frequency mode divides the clock by 2, 4, 8, or 16. In the subclock mode, the CPU runs on the 32-kHz subclock. In wait mode, the CPU clock stops with peripheral functions and the oscillator running. Stop mode stops all operation, including oscillation.
Special instructions: The M16C has 91 instructions, including bit-manipulation instructions for sequence control, graphics, and data communications. Other special instructions include high-level C-language and operating-system support instructions.
Special on-chip peripherals: Some of the functions available on M16 devices include a 10-bit ADC with S/H circuitry; a subscriber-interface module; an array of multifunction timers; and full-duplex UARTs. The M16C also supports a masked-ROM program-correction function that uses an address-match interrupt scheme to allow designers to correct two faulty mask-ROM program areas with an external EEPROM. These µCs also have 16-bit CRC circuitry that uses the CRC-CCITT (X16+X12+X5+1) polynomial with either of the chip's UARTs.
Development tools: IAR Systems (www.iar.com) and Tasking (www.tasking.com) offer third-party support in C compilers and assemblers. Hewlett-Packard (www.hp.com), Orion Instruments (www.yokogawa.com), and Nohau Corp (www.nohau.com) provide in-circuit emulators. CMX Co (www.cmx.com), Embedded Systems Products (www.esphou.com), and Bytebos (www.bytebos.com) provide RTOS kernels. Mitsubishi offers its own development tools, which include evaluation boards, in-circuit emulators, assemblers, C compilers, RTOSs, and programming adapters.
Second sources: There are no second sources for the M16C.
| EDN Access | Feedback | Table of Contents |
Copyright © 1998 EDN Magazine, EDN Access. EDN is a registered trademark of Reed Properties Inc, used under license. EDN is published by Cahners Business Information, a unit of Reed Elsevier Inc.