Dr. Scott M. Baker

CTS256A-AL2 Text-To-Speech Board

by admin on Sep.04, 2017, under Electronics Projects

In this post, I buld a board that uses the CTS256A-AL2 text to speech and SP0256A-AL2 speech synthesizer chips:

Why?

“Why? ” seems like a good question to ask. I’ve been working with vintage speech synthesizer ICs lately, and you see the CTS256A-AL2 appear on eBay from time to time. The CSS256A-AL2 is not a speech synthesizer chip, but rather it’s a text-to-speech chip. It’s designed to take ASCII text and convert it to phonemes, which are then converted to text by the SP0256A-AL2. Using this IC frees a project from having to specify speech in phonemes and allows you to use plain ordinary ASCII. I wanted to give that a shot, so I made a board.

Design

The design came straight out of the Radio Shack data sheets and application notes, which a couple of small modifications, such as adding an activity LED and picking a more modern serial driver chip. Below is my schematic:

CTS256A-AL2 text-to-speech board schematic

Again, the design is right out of the datasheet / application notes, and you can find those on the web. Nevertheless, I’ll summarize the interesting bits:

  • The CTS256A-AL2 is a microcontroller with on-board ROM and RAM. It’s programmed to implement the text-to-speech algorithm. It’s a big 40-pin dip package. It interfaces to external chips through a multiplexed address/data bust (i.e. if ALATCH is active, then address bits will be latched, otherwise the bus containers data bits). There’s also an additional 8 address bits, giving it a 16-bit address space.
  • A 74HCT138 is used to do address decoding for external peripherals, including the SP0256A-AL2.
  • External ROM and RAM are supported. The external ROM allows you to store special phoneme rules in case the default TTS rules speak a word incorrectly. The external RAM allows you to increase the size of the buffers. These are optional.
  • External jumpers are supported to let you select serial parameters, and are buffered by another 74HCT373. These parameters let you set number of data bits, stop bits, etc.
  • The CTS256A-AL2 has TX, RX, and BUSY (i.e. CTS) lines for serial communication. I connected them to a MAX202 RS232 driver and a DB-9 connector.
  • Also supported, though not included in my schematic due to space limitations on the PCB, is a parallel interface in case you’d like to talk to the chip via parallel rather than serial.

Implementation

As usual, I sent the board design off to OSH Park and had a PCB fabricated. Below is what it looks like:

Text to Speech Board

There’s not a whole lot to say about the pc-board, it’s a straightforward layout of the schematic. Note that this is a 5V project, so if you build one, make sure to plug 5V into the barrel jack, not 12V. The RAM chip I ordered the wrong size (narrow instead of wide) and I had to build an adapter to go from the narrow to the wide footprint. oops.

PCB Ordering

As usual, the PCB is shared on Osh Park in case anyone wants to build one of these.

Order from OSH Park


Leave a Reply


8 − = four

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

New Kickstarter Project!

Interested in Nixie Tube projects? Check out my new Nixie Tube Calculator project on Kickstarter.

Copyright Notice

All content on this website is copyright Scott M. Baker and may not be used or reprinted without explicit permission.

Violators will be eaten by a grue.