Runtime code on Zchips

Discussion specific to the DIP and TQFP packaged ZX devices like the ZX-40, ZX-44, ZX-32 and ZX-328 series. The differences between these devices is primarily the packaging and pinout so most issues will apply to all devices.
Post Reply
zbasicandy
Posts: 193
Joined: 25 January 2006, 19:56 PM

Runtime code on Zchips

Post by zbasicandy »

I am planning to use your ZX-40 and ZX-44 chips. The ZX-40 can be socketed and the ZX-44 cannot e.g surface mount. Changes in the runtime
code would mean changes in the code on the chip? At what point, do you ever change the code on the chip? What is in this code? Adding new instructions/functions would require new code updates on the chip?
dkinzer
Site Admin
Posts: 3120
Joined: 03 September 2005, 13:53 PM
Location: Portland, OR

Post by dkinzer »

I don't think that I understand what you're asking. Here is some information that may clarify the situation:

The ZX Virtual Machine is implemented in firmware on the AVR CPU chip. The firmware is modified as necessary to fix errors and to add new capabilities. The firmware can be updated with the ZX-40 or ZX-44 installed in your device as long as the Rx, Tx and ATN lines are available. It would, therefore, be advisable to design your system so that a serial cable can be connected to it to, allowing either the firmware or your software to be updated.

If this doesn't answer your question, perhaps it could be rephrased in light of this information.
- Don Kinzer
zbasicandy
Posts: 193
Joined: 25 January 2006, 19:56 PM

Runtime code on Zchips

Post by zbasicandy »

The code on the ZX-xx chip is only a "bootloader" for your flash memory upgrades and I need not to worry about pulling the "surface mount" chip off the board for "special updates"?
dkinzer
Site Admin
Posts: 3120
Joined: 03 September 2005, 13:53 PM
Location: Portland, OR

Post by dkinzer »

The code on the ZX-xx chip is only a "bootloader" for your flash memory upgrades...
The firmware on the ZX chip has two distinct parts - the virtual machine and the bootloader. The VM is an interpreter that executes the code generated by the ZBasic compiler while the bootloader performs firmware updates on the VM.
...and I need not to worry about pulling the "surface mount" chip off the board for "special updates"?
That is true as long as you make provisions to attach a serial cable to the TxD, RxD, DTR and ground lines.

It may help to think of the ZX-24 as a simple application that is based on the ZX-44. Since it makes the above mentioned serial lines available, the firmware on the CPU chip can be updated in the field.
- Don Kinzer
Post Reply