Variable Packet Writing

Jan-Eric Duden jdu at ashampoo.com
Tue Jul 19 06:39:17 PDT 2005


* From the T10 Reflector (t10 at t10.org), posted by:
* Jan-Eric Duden <jdu at ashampoo.com>
*
Dear Wasim,

Regarding variable packet writing, as far as I know, this mode only=20
applies to CD writing and most DVD writing profiles expect fixed size=20
packets.

Here are some citations from MMC5r01a.pdf that should provide some help =

in understanding issues regarding packets and blocking.

For DVD-R and ( I think ) DVD-RW (Sequential Recording):

7.4.4.10 FP
The FP bit, when set to one indicates that the packet type is fixed.=20
Otherwise, the packet type is
variable. This bit is ignored unless the write type is set to 0=20
(Packet). For DVD-R, this bit shall default to one.

For DVD-RW in (Restricted Overwrite Mode):

5.3.22
[...]
Writing from the Initiator into the media shall be in units of =
Blocking.=20
Writing shall begin and shall stop
at Blocking boundaries. The writable units may be sent via multiple=20
WRITE (10) commands. If a
Write does not begin on a Blocking boundary, the Logical Unit shall=20
return CHECK CONDITION
status and set SK/ASC/ASCQ values to ILLEGAL REQUEST/INVALID ADDRESS =
FOR=20
WRITE. If a
Write does not end on a Blocking boundary the Logical Unit shall return =

CHECK CONDITION status
and set SK/ASC/ASCQ values to ILLEGAL REQUEST/INVALID FIELD IN CDB.

For DVD+R:
4.4.6.2.1.1 ECC Blocks
The minimal writable entity on DVD+R is the 32KB ECC block. Physically, =

DVD+R is randomly
writable in 32KB ECC blocks, but not necessarily randomly readable. An=20
ECC block is not fully
decodable when it follows a blank area of media. In order to ensure=20
readability, ECC blocks shall be
written in sequential regions.

For DVD+RW
4.4.8.3.2 Writing
Since the Initiator=E2=80=99s perception is that the media is sector =
readable,=20
then in order to maintain
compatibility with other block devices, a DVD+RW Logical Unit shall be=20
able to also write single
sectors for its Initiator.
The Logical Unit is required to write DVD+RW media only in complete ECC =

blocks. So, the Logical
Unit shall often perform a read/modify/write function in order to=20
place the Initiator=E2=80=99s data in the correct
position within the ECC block. That works when the ECC block to be=20
written has already been
written. When the ECC block has never been written and the Logical Unit =

shall write less than a full
ECC block, then the Logical Unit shall create data. The correct method=20
is to zero fill sectors for which
no data is available.

Hope it helps.

MfG / Regards
Jan-Eric Duden
ashampoo Technology GmbH & Co. KG
http://tech.ashampoo.com
http://www.ashampoo.com



Wasim Sabir wrote:

>* From the T10 Reflector (t10 at t10.org), posted by:
>* Wasim Sabir <wasim.sabir at gmail.com>
>*
>Dear All,
>
>When writing a DVD in variable packet writing mode, is it necessary to
>align all writes to 16 block boundary? Could I write any varibale size
>packet such that linking between packets spans 16 block boundary?
>
>--
>With kind regards,
>
>Wasim Sabir
>*
>* For T10 Reflector information, send a message with
>* 'info t10' (no quotes) in the message body to majordomo at t10.org
> =20
>
*
* For T10 Reflector information, send a message with
* 'info t10' (no quotes) in the message body to majordomo at t10.org





More information about the T10 mailing list