Andy Rea wrote:Very Well done, it's no easy feat I know ! Still think my 74xx version was a Killer !
Yes very impressive - esp. that such a wire mess actually works...
zx80nut wrote:If any of you have any pointers on getting started with the devices that you have been using, and best/cheap devices to use to do a "ULA" then please let me know.
Some good pointers would be
my page on the subject, or
some relevant threads over on EDAboard.com. Be sure to check linked threads & Google a bit for mentioned boards - there's a wide variety of interesting boards out there.
To be honest, so far I'm not convinced actual
development (trying out design changes) goes faster than re-wiring heaps of 74xx circuitry - there's other advantages though:
- All the inter-circuit wiring is in the CPLD - so only wiring needed are signals going in, and signals coming out. Normally I only need soldering iron to connect a signal that I haven't used before.
- Don't need to go out to a shop / order parts when I need a 74xx that's not in my parts box - CPLD / FPGA design uses very generic logic constructs so you can 'emulate' any 74xx part (or whatever you can think of).
- Any design cooked up is much easier to reproduce (just buy another CPLD & program the part, vs. needing to build an entire circuit board when design consists of 74xx IC's). As soon as you exceed a few 74xx parts, CPLD's are smaller, cheaper & likely more power-efficient too.
- Design becomes much easier to move from board to board (like from CPLD -> FPGA board), or include as a building block in other projects. That flexibility is a biggie for me personally...
For ZX81 ULA development, XC9500 series is the most hassle-free (single 5V parts) but on their way of being phased out, and more expensive than 3.3V (5V tolerant) XC9500XL series. XC9572 should be big enough to contain all ULA logic, and XC9572
is available in PLCC-84 package which has all the I/O you'd want for this application. It's
possible to find XC95108 in PLCC package, but it's quite expensive.
Beyond that you're looking at IC housings that are near-impossible to hand solder, breakout boards with 100/144-pin QFP IC's (0.5mm pitch) and low-end FPGA boards. It's just a matter of what you want to do, budget, and how much DIY is acceptable. For an overview of the architecture & available packages, check the
XC9500 and
XC9500XL families datasheets.
Altera has similar parts, and using .SVF / .XSVF files as workaround, you should be able to program them with your Presto programmer.
Andy Rea wrote:Keep plugging away it's quite rewarding to see something you've created work
Indeed it is!

(and never doubted that when I started this project).