Digital audio from IDE

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
The Blackfin does come with extra costs that a dsPIC or Rabbit won't encounter.

The part runs at 1.5 volts. You need an external FET, inductor and a large MLCC or tantalum capacitor for its power supply. Routing signals and good power to it invariably requires a 4-layer board, which can't be had cheaply on Olimex/CustomPCB orders. Cheapest deal I've found so far for 4 layers is $102-for-2 from Sierra Proto Express.

Compared to building a BF532 board from scratch in a low quantity, It might actually be cheaper to buy a something like a Cambridge Signal "DSP Stamp" and mount it on a simple/cheap 2-layer board which holds the IDE/I2S/RS232 stuff and maybe a bit of extra flash.

Here's the DSP stamp: http://www.camsig.co.uk/products.htm

I'm busy reading up on ucLinux now. From the sounds of things, I'll have to increase the amount of flash memory up to 4 or 8 megs.
 
And as for graphic LCD's... the fundamental philosophy of this board is that I'm not going to tie anyone into using any particular human or audio interface.

The board will put out I2S audio in LVDS format, nothing else. To actually convert this into audio or SPDIF, someone will have to add their own board and they can build this board however they want with their own choices for DAC, I/V stage, etc... And just as people can't agree on OS/Non-OS, people probably won't agree either on graphic LCD, character LCD, VFD, 7-segment LED or nixie tube. So control will be via RS232 and nothing else. You'll have to build your own human interface board which displays what you want on a screen of your choice.

I'll make a a reference design for an audio output board and a human interface board, but I'm hoping that other people will create and produce better/different designs for these.

Back to nixie tubes... wouldn't a CD player with a nixie tube display and an analog audio chain full of vacuum tubes be completely awesome? :D
 
Anyways, there are cheapo 128x96 monochrome LCDs that exist so that's not a problem. And you can draw things with these, like buttons, so you can show what buttons next to it are doing, or put a touch pad :D .

And as for graphic LCD's... the fundamental philosophy of this board is that I'm not going to tie anyone into using any particular human or audio interface.
It was supposed to be a CD player if I remember, and CD players have an interface. And you would have to put play, pause, time... support anyways, even if you don't have an UI, because the UI will have to use them.
 
DragonMaster said:
It was supposed to be a CD player if I remember, and CD players have an interface. And you would have to put play, pause, time... support anyways, even if you don't have an UI, because the UI will have to use them.
As well as an interface, "CD players" also have a case, a transport, and audio outputs that are in some professional/consumer, analog or digital format.

This isn't a CD player. It's a circuit board which extracts audio data from a computer CDROM drive and outputs I2S audio. If you want a CD player, then build one around it.
 
You give us the board and an "output" lib.(That replaces the sound card lib)
that we can use with some decoders already available with an interface controlling what's between?



Here is an interesting LCD setup:

http://www.simmetry.com/

Already has the microcontroler and touchscreen overlay. Could make a nice custom display with that.

That give 32 asian 16x16 characters.

Mouser have the Graphic LCDs, the touch pads and the touch pad decoder, but the touch pads are for 5" 320x240 screens. I think the price is about the same as buying a "symmetry" for everything. Maybe we should just put buttons around the LCD. What else, it will start having high costs.

The Blackfin BF533 stamp costs more than a 80$ P3 500MHz with everything included, that will do the same job, but with less programming and design. (Would just need an output lib passing thru some I/O ports.)
 
DragonMaster said:
The Blackfin BF533 stamp costs more than a 80$ P3 500MHz with everything included, that will do the same job, but with less programming and design. (Would just need an output lib passing thru some I/O ports.)
To accomplish the same amount of stuff i'm making this board do, a 500MHz P3 would require:

- active cooling, or a monstrous passive heatsink.
- a custom soundcard with I2S output capability.
- A large case to occupy the ATX/MATX motherboard and the perpendicular soundcard.

I thought about the custom soundcard thing before I dove into this project. It would require putting a FPGA (and probably a PCI interface chip) on a PCI card, writing the HDL for that, then writing the associated low-level drivers for Windows, Linux and so forth.

Digging further, I thought about putting a BF535 Blackfin on a PCI card, since it has a PCI interface already and serial port hardware that could generate I2S with the help of a CPLD. Then I promptly realized that I could toss out the rest of the PC and use a cheaper BF531/532 Blackfin by itself on a small, space-efficient, powerful board. Hence this project.

rfbrw said:
If a generally available board is to have the remotest chance of being built then it has to be driven by one person with a fixed idea in mind, especially if one is to avoid feature-creep. As things stand the gmarsh board is the only game in town.
exactly.

I'm a conservative hardware engineer at my company, who is surrounded by a bunch of keen software types that are constantly throwing suggestions/features at me. There's nothing wrong with having great ideas... but when you're working on a project with (1) a fixed design spec that doesn't specify any extra features, and (2) a fixed deadline and project schedule which doesn't include the design/test of extra features... these features are not going in regardless of how good they might be. Anything that delays a project is a bad idea.

If good ideas only require software changes, then they may be included in a later software upgrade. The hardware i'm designing here is general enough that adding hard drive support, FLAC decoding, etc... will require no hardware changes.

I think I will add a couple of test buttons (eg play/pause, next track) to the board for test purposes. But there will be no display interface - "officially", control/display will only be via RS232.
 
IDE interface boards for my BF533 EZ-KIT just arrived! Development gets underway when I get this built.

(also shown in picture is a PCM2902/2906-based, USB->Toslink board)
 

Attachments

  • dsc_1940.jpg
    dsc_1940.jpg
    100 KB · Views: 624
I think I will add a couple of test buttons (eg play/pause, next track) to the board for test purposes. But there will be no display interface - "officially", control/display will only be via RS232.

This is an option too, but it will have to give lots of information thru the port. (This could be software upgraded anyways)

Also, (other option)will you give us the ability to put our own interface on the Blackfin?(Eg, instead of sending RS232->PIC(getting info and drawing it for the LCD), sending directly to LCD? (Less microcons)

That means it would need to use open-source software.


For now, what do you think the prices could be?(Just to give an idea) To see if what's after this could do the job?

To accomplish the same amount of stuff i'm making this board do, a 500MHz P3 would require:

- active cooling, or a monstrous passive heatsink.
- a custom soundcard with I2S output capability.
- A large case to occupy the ATX/MATX motherboard and the perpendicular soundcard.

I mean a "Complete" system, with mainboard, hard drive, CD drive, floppy drive, CPU, heatsink, case . . . That could use an old ISA SB16 by using it's PCM data pins like some did to get an SPDIF output, and even more, the volume and tone is "hardware" so it doesn't have any problems with this.


If good ideas only require software changes, then they may be included in a later software upgrade. The hardware i'm designing here is general enough that adding hard drive support, FLAC decoding, etc... will require no hardware changes.
PATA or SATA finally? :D (there are PATA to SATA and SATA to PATA adapters) I saw that people were telling there is practically no more non-SATA drives, but at every shop I look, there are 1 sata drive for 4 pata ones. Only difference, SATA is faster and CRC checks status bits too.(And can't be controlled without controllers liek PATA I think, doh!)
 
Prices: not sure yet.. I'll have to select all the parts and price it first, and find out how many I'm making. The main, big, annoying cost is PCB fabrication since it's going to be a 4 layer board and the quantites are low. I still don't know how much flash and SDRAM memory I need since I haven't started on the software.

I've been reading up on running Linux on the blackfin, but I've still got lots to learn. Originally I intended to write everything from scratch in VisualDSP++... a much smaller flash footprint is required in this case. But if the project went open source and people were willing to help out, then linux is almost necessary.

eliminating external controller: You could potentially drive a RS232 LCD (Crystalfontz, Wirz, etc) directly using the DSP. Scanning keys would require adding a GPIO header of some sort to the design, and the user would have to write the DSP application which communicates with the display with the user interface they want.

But on the other hand, PICs and AVRs are easy to program and very inexpensive, and it makes my end of things a lot simpler.

SATA: this would require putting a PATA-to-SATA controller on my board, which is annoying - I looked at a Marvell chip and the lowest quantity I could buy it in was 100,000. You can buy PATA-to-SATA converters anyway, I linked to one earlier in the thread. At this point, SATA CDROM drives are still extremely rare and brand new PATA drivers are still coming out. I think it'll be a while before PATA is fully obsolete..


DragonMaster said:


This is an option too, but it will have to give lots of information thru the port. (This could be software upgraded anyways)

Also, (other option)will you give us the ability to put our own interface on the Blackfin?(Eg, instead of sending RS232->PIC(getting info and drawing it for the LCD), sending directly to LCD? (Less microcons)

That means it would need to use open-source software.


For now, what do you think the prices could be?(Just to give an idea) To see if what's after this could do the job?



I mean a "Complete" system, with mainboard, hard drive, CD drive, floppy drive, CPU, heatsink, case . . . That could use an old ISA SB16 by using it's PCM data pins like some did to get an SPDIF output, and even more, the volume and tone is "hardware" so it doesn't have any problems with this.



PATA or SATA finally? :D (there are PATA to SATA and SATA to PATA adapters) I saw that people were telling there is practically no more non-SATA drives, but at every shop I look, there are 1 sata drive for 4 pata ones. Only difference, SATA is faster and CRC checks status bits too.(And can't be controlled without controllers liek PATA I think, doh!)
 
gmarsh said:
IDE interface boards for my BF533 EZ-KIT just arrived! Development gets underway when I get this built.

The board looks very nice.
I ordered the BF533 STAMP Board, but it will be available not until the end of May.
So i played a little bit with the ATA interface. I built a small board containing an 8-bit mcu and some hc595/hc165 interfacing to ATA, keys and debug lcd. ATAPI is pretty simple and doing CDDA with Blackfin will be quite easy. Doing it with Linux will be not as easy but feasible.
I am also playing with the Spartan-3 FPGA, implementing "Open Source" MCU, I2S and so on.
And yes, Gary, You're right with the ATA-to-I2S-with-232-stuff. Even RS232 is too much, a simple three wire SPI would also do.

Daniel
 
I went with RS232, because it (1) allows easy connection to a PC for (re)programming the DSP flash, and (2) avoids 3.3V/5V issues which may arise with a SPI interface.

Almost every microcontroller out there has a UART on board anyway, and there's plenty of software UART stuff out there for the 16F84 and other micros.

And finally, I'm already using the SPI on the Blackfin for flash memory.
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.