Hi.
CPLDs...Free to Good Home
I have a handful of surplus CPLDs (Complex Programmable Logic Devices) EPM7128SLC84-15s and EPM7032SLC44-10s . Anyone that is interested in learning VHDL code/logic programming may find them useful as 'Glue logic ' in designs. These will work with 5V TTL logic levels. * See Alter MAX Datasheets. I may also have some GAL16V8 PLDs ..when I find them !
Anyone interested just email me lezanderson@gmail.com.
You'll need a USB Blaster Cable and some programming software from the Altera Website. to program Altera MAX EPM7xxx devices.
You may be able to emulate the ZX8301 / ZX8302 ULAs on these type of CPLDs..depending on the number of Macrocells used.
Spread the Love
Complex Programmable logic CPLDs
-
- ROM Dongle
- Posts: 14
- Joined: Mon Aug 13, 2012 4:06 pm
-
- ROM Dongle
- Posts: 14
- Joined: Mon Aug 13, 2012 4:06 pm
Re: Complex Programmable logic CPLDs
Has anyone put the QLs ULAs onto a CPLD ?
Putting QL ULAs onto a Complex programmable logic Device (CPLD)?
Has anyone put the functionality of the QLs ULAs (ZX8301/ZX8302) Chips into VHDL/Verilog Code which could be used to programme a CPLD?
If so how many Macrocells/logic blocks are needed, in order to select an appropriate CPLD device.
I ask because I may have some spare EPM7256xxx and EPM7512xxx surface mount Altera MAX CPLDs which may do the job ? Anyone interested just email me.
******************************************************************
ZX8301 & ZX8302 ULAs as described by Wiki:
The ZX8301 is an Uncommitted Logic Array (ULA) integrated circuit designed for the Sinclair QL microcomputer. Also known as the "Master Chip", it provides a Video Display Generator, the division of a 15 MHz crystal to provide the 7.5 MHz system clock, ZX8302 register address decoder, DRAM refresh and bus controller. The ZX8301 is IC22 on the QL motherboard.
The Sinclair Research business model had always been to work toward a maximum performance to price ratio (as was evidenced by the keyboard mechanisms in the QL and earlier Sinclair models). Unfortunately this focus on price and performance often resulted in cost cutting in the design and build of Sinclair's machines. One such cost driven decision (failing to use a hardware buffer integrated circuit (IC) between the IC pins and the external RGB monitor connection) caused the ZX8301 to quickly develop a reputation for being fragile and easy to damage, particularly if the monitor plug was inserted or removed while the QL was powered up. Such an action resulted in damage to the video circuitry and almost always required replacement of the ZX8301.
The ZX8301, when subsequently used in the International Computers Limited (ICL) One Per Desk featured hardware buffering, and the chip proved to be much more reliable in this configuration.
The ZX8302 was a ULA integrated circuit designed for the Sinclair QL microcomputer. Also known as the QL's "Peripheral Chip", it interfaced the CPU to the Microdrives, QLAN local area network interface and RS-232 ports (transmit only) and also provided a real-time clock. The ZX8302 was IC23 on the QL motherboard.
Putting QL ULAs onto a Complex programmable logic Device (CPLD)?
Has anyone put the functionality of the QLs ULAs (ZX8301/ZX8302) Chips into VHDL/Verilog Code which could be used to programme a CPLD?
If so how many Macrocells/logic blocks are needed, in order to select an appropriate CPLD device.
I ask because I may have some spare EPM7256xxx and EPM7512xxx surface mount Altera MAX CPLDs which may do the job ? Anyone interested just email me.
******************************************************************
ZX8301 & ZX8302 ULAs as described by Wiki:
The ZX8301 is an Uncommitted Logic Array (ULA) integrated circuit designed for the Sinclair QL microcomputer. Also known as the "Master Chip", it provides a Video Display Generator, the division of a 15 MHz crystal to provide the 7.5 MHz system clock, ZX8302 register address decoder, DRAM refresh and bus controller. The ZX8301 is IC22 on the QL motherboard.
The Sinclair Research business model had always been to work toward a maximum performance to price ratio (as was evidenced by the keyboard mechanisms in the QL and earlier Sinclair models). Unfortunately this focus on price and performance often resulted in cost cutting in the design and build of Sinclair's machines. One such cost driven decision (failing to use a hardware buffer integrated circuit (IC) between the IC pins and the external RGB monitor connection) caused the ZX8301 to quickly develop a reputation for being fragile and easy to damage, particularly if the monitor plug was inserted or removed while the QL was powered up. Such an action resulted in damage to the video circuitry and almost always required replacement of the ZX8301.
The ZX8301, when subsequently used in the International Computers Limited (ICL) One Per Desk featured hardware buffering, and the chip proved to be much more reliable in this configuration.
The ZX8302 was a ULA integrated circuit designed for the Sinclair QL microcomputer. Also known as the QL's "Peripheral Chip", it interfaced the CPU to the Microdrives, QLAN local area network interface and RS-232 ports (transmit only) and also provided a real-time clock. The ZX8302 was IC23 on the QL motherboard.
- mk79
- QL Wafer Drive
- Posts: 1349
- Joined: Sun Feb 02, 2014 10:54 am
- Location: Esslingen/Germany
- Contact:
Re: Complex Programmable logic CPLDs
Unfortunately the answer is no so far.lezanderson wrote:Has anyone put the QLs ULAs onto a CPLD ?
Cheers, Marcel
Re: Complex Programmable logic CPLDs
There are two threads in this section describing in some detail the internal operations of the 8301 and 8302 ULA chips.lezanderson wrote:Has anyone put the QLs ULAs onto a CPLD ?
Putting QL ULAs onto a Complex programmable logic Device (CPLD)?
Has anyone put the functionality of the QLs ULAs (ZX8301/ZX8302) Chips into VHDL/Verilog Code which could be used to programme a CPLD?
If so how many Macrocells/logic blocks are needed, in order to select an appropriate CPLD device.
I ask because I may have some spare EPM7256xxx and EPM7512xxx surface mount Altera MAX CPLDs which may do the job ? Anyone interested just email me.
While the workings of the 8301 are pretty well known (although there are some details that need further research as to the differences in the various versions of the chip), there are still some 'holes in the knowledge' about the 8302, specifically details on IPC communications and microdrive read/write circuitry.
It should be noted that (to my knowledge) the only hardware dependent things used directly and not through an OS driver are the RTC seconds counter in the 8302 and the mode control register in the 8301. From that point of view, it is questionable to completely copy the ULAs circuits, rather design a 'compatible' design with some extras.
Re: Complex Programmable logic CPLDs
Not quite During compatibility tests of the Q68, Detlef found that few (two?) games access the IPC for keyboard input without OS calls.Nasta wrote:It should be noted that (to my knowledge) the only hardware dependent things used directly and not through an OS driver are the RTC seconds counter in the 8302 and the mode control register in the 8301.
Agreed. IIRC the deviators were adventures without any justification to circumvent the OS for keyboard. I think they can be ignored or patched.Nasta wrote:From that point of view, it is questionable to completely copy the ULAs circuits, rather design a 'compatible' design with some extras.
Peter