Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

SCSI Protocol Controller (SPC) - Does anybody used one before?

Status
Not open for further replies.

e-music

Member level 5
Joined
Dec 29, 2017
Messages
84
Helped
0
Reputation
0
Reaction score
0
Trophy points
6
Activity points
1,065
I'm trying to implement a SCSI target device (MSD) around a legacy SCSI Protocol Controller (SPC) and an embedded ARM Cortex-M uC. My SPC has all the required logic to interface directly with the SCSI bus and it also integrates a phase sequencer that can handle all SCSI phases at hardware level.

So far, I've been able to interface the chip with my uC, perform writes/reads to/from any of its internal registers, including the 16-byte FIFO.

HOwever, I'm struggling to understand how to process an incoming CDB, say the INQUIRY Command, how to return the INQUIRY DATA (inquiry response bytes stored in an array), and how/when the initiator gets the details about the medium (LUN) connected? I know that it has to send a REQUEST_SENSE command to the target, but I just don't understand when and during which SCSI phase?

My application starts by enabling selection and waits until an interrupt that indicates successful selection by an initiator. After which, the Identify message, bus ID, along with the full CDB are in the FIFO. I'm stuck here. Just don't know what to do next?

I tried to send the INQUIRY_RESPONSE bytes I had in the array back to the initiator but not sure how to verify whether the initiator received them and how to proceed from there?

By the way, the initiator responds when I send a "DISCONNECT_SEQUENCE" command by getting back to the BUS-FREE phase and releasing the bus.

If anyone has some experience working with SCSI Protocol Controllers, I would be glad to provide more info about the SPC used and any other details that might help.

Thank you!
 

I have ordered several books on SCSI almost 5 years ago (SCSI Bus and IDE interface & The Programmer's guide to SCSI), but I do not have the disks for both of them anymore and I just couldn't find any relevant info on the internet. I would appreciate it if someone knows where I can get a copy of those Target-Mode drivers so I can learn from and see how the various aspects of the protocol have been implemented to work with a SCSI controller.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top