80 Column Mode and high speed serial?
Posted: 30 Aug 2020, 16:54
Clearly the original vision for the Gigatron was a 80's retro-style machine with colour video and audio - capable of playing arcade style games.
The TTL cpu and integrated video generation hardware was designed around the requirement of 1/4 VGA video generation at 2 bits per colour.
What if we took a somewhat sideways step, and specified that the video output was to be monochrome, text based, and meet the needs of an 80 column display? Effectively making it a "business" machine (or terminal to another system), rather than a games machine.
This approach would mean we no longer had to push 6 bits of pixel data to the screen, every 6.25MHz clock cycle, but we could load each row of character data into an 8-bit parallel load shift register (74HCT165) and clock that data out serially to drive the pixel output. The shift register clock would run at 25MHz allowing the cpu to only fetch from the character ROM at 3.125MHz - allowing some additional processing to be done between character fetches. A resistor network could be used to give either a white, green or amber text colour - depending on your preference.
Thinking about a high speed video shift register, also got me pondering about other high speed serial I/O processes - which we now take for granted, since SPI became a ubiquitous interface between devices. An SPI interface is essentially just two shift registers, as one clocks its data out, the other clocks data in from the connected device.
A recent Hackaday featured a design for a UART built from TTL - but it was 12 devices.
https://shepherdingelectrons.blogspot.c ... puter.html
With a bit of TTL ingenuity, an SPI interface could be created in far fewer devices - and theorhetically allow data transfer at up to around 50Mbit/s. This would allow for practical use of fast SPI memory devices - to be used as external solid-state drives, or to another SPI machine - equivalent to a server or in Gigatron parlance (circa 1980) the mainframe.
Removing the constraints of having to service the VGA generation, and overclocking the Gigatron to 12.5MHz could result in a very capable machine, yet retain the fundamental simplicity and philosophy of Marcel's original design.
The TTL cpu and integrated video generation hardware was designed around the requirement of 1/4 VGA video generation at 2 bits per colour.
What if we took a somewhat sideways step, and specified that the video output was to be monochrome, text based, and meet the needs of an 80 column display? Effectively making it a "business" machine (or terminal to another system), rather than a games machine.
This approach would mean we no longer had to push 6 bits of pixel data to the screen, every 6.25MHz clock cycle, but we could load each row of character data into an 8-bit parallel load shift register (74HCT165) and clock that data out serially to drive the pixel output. The shift register clock would run at 25MHz allowing the cpu to only fetch from the character ROM at 3.125MHz - allowing some additional processing to be done between character fetches. A resistor network could be used to give either a white, green or amber text colour - depending on your preference.
Thinking about a high speed video shift register, also got me pondering about other high speed serial I/O processes - which we now take for granted, since SPI became a ubiquitous interface between devices. An SPI interface is essentially just two shift registers, as one clocks its data out, the other clocks data in from the connected device.
A recent Hackaday featured a design for a UART built from TTL - but it was 12 devices.
https://shepherdingelectrons.blogspot.c ... puter.html
With a bit of TTL ingenuity, an SPI interface could be created in far fewer devices - and theorhetically allow data transfer at up to around 50Mbit/s. This would allow for practical use of fast SPI memory devices - to be used as external solid-state drives, or to another SPI machine - equivalent to a server or in Gigatron parlance (circa 1980) the mainframe.
Removing the constraints of having to service the VGA generation, and overclocking the Gigatron to 12.5MHz could result in a very capable machine, yet retain the fundamental simplicity and philosophy of Marcel's original design.