As far I understand, you need to work on two parts here. The first is the physical interface itself and then emulating the SCSI HBA in the software.
Though it is a pretty difficult task, it's not impossible. However, considering the complexity of the issues involved, I would also suggest emulating a SCSI interface in the software while working on a bunch of SD cards under the hood. In other words, any SCSI command that arrives, instead of working on the SCSI stuff, translate it into the SD card operations.
Having a bunch of SD cards, say 8 cards, each storing a bit of a given byte in parallel, definitely improves your performance.
However, the whole solution works only if your input is SCSI commands and you can deal with the underlying stuff. If you have a bunch of SCSI peripherals to be talked to, I guess you have to take the hard way. Try referring to some books on SCSI interfaces, first on the physical layer and then the SCSI command set, in that case.