Whereabouts is the physical sector size of a device with long physical sectors defined? I note that long logical sectors or multiple physical sectors per logical sector are defined in the IDENTIFY DEVICE block. However, I see no such mention of the physical sector size.
Could anyone enlighten me? Or is this an omission from the specification?
The xEC Identify data tells us bytes per lba and lba's per drq, yes?
What other byte count do we need to write/ read via ATA?
More specifically now, I'm thinking the device gives the host every necessary detail because I see:
xEC "word" 106 tells us lba/write, expressed as a precise power of two xEC "word" 59 tells us lba/pio-drq xEC "word"s 118:117 tell us bytes/lba
Our model here, on purpose I imagine, cannot accurately represent a hypothetical device that has an lba/write that is something other than a power of two lba. A device like that might have to report its lcm (least-common-multiple) between a power of two and its actual lba/write.
Also I should mention, you can see I guessed "word" 118 more significant than 117, I have not yet seen that guess confirmed or denied in the t13.org text.
Also, does anyone know of a drive which uses the long logical sectors feature set?
Anyone?
We can simulate such devices accurately with a trivial layer in software. As V1 annex C explains, all that necessarily changes is the response to misaligned access.
If in software we round up any misaligned access to be aligned, then we have simulated a device that rounds up all its accesses.
We would expect to find that rudely misaligned reads cost little, but that rudely misaligned writes waste at least whole revolutions as the device backtracks to read aligned and then backtracks again to write aligned.
Pat LaVarre
