Category: TIPS

The different engineering validation stages in a nutshell | EVT, DVT, PVT

Hardware development comes in different phases. This article gives a nutshell of each phase.

PRD(Product Requirement Document)
PRD will allow the engineers to start doing the work on the hardware and mechanical level. You might end up with a mock up in order to see a non-functional design but the game is to reach something that some beta users can manipulate and that we could call MVP (Minimum Viable Product).

EVT (Engineering Validation and Testing)
Once your hardware is finalised, it needs to be tested and validated. This step is called EVT. The product cannot pass EVT if not all functional requirements are matched and if the hardware is providing the results and metrics that were expecting in the PRD through the specifications for example. Hardware and it will be tested for thermal, power, and EMI stresses.

DVT (Design Validation and testing)
The hardware will be produced in a small lot and will go through thorough test like dropping it from a certain height, burning it, check if it is waterproof, etc. Every country has different certifications and standards for products.

PVT (Production Validation and Testing)
This stage DFM (Design For Manufacturing) has been done and the moulds are ready, so is the stencil for your PCB (printed Circuit Board) by setting up a production line.This stage also consists DFA (Design For Assembly) as it can happen at different stages but most probably close to the end and it will allow engineers find the best and most efficient way to assemble the product after getting produced.

Source: The different engineering validation stages in a nutshell | EVT, DVT, PVT

How to Disable Disk Write Caching in Ubuntu To Prevent Data Loss | UbuntuHandbook

Disk write cache is a feature provided by drive vendors to improve the performance of the disks.
This feature can result in data loss if there are sudden power outages.
It depends on the application to decide whether to enable disk write cache or not.
For SATA SSD drives the following commands can be used to enable and disable write caching.

To know write caching is enabled/disabled
hdparm -W /dev/sda

To enable write cache
hdparm -W 1 /dev/sda

To disable write cache
hdparm -W 0 /dev/sda

where, /dev/sda is example SATA SSD used.

You can get the details of the drive susing lsscsi command.

Source: How to Disable Disk Write Caching in Ubuntu To Prevent Data Loss | UbuntuHandbook

What are SCSI Reservations and SCSI Persistent Reservations?

SCSI reservations are used to gain access to a LUN by denying access to other initiators.

SCSI-2 reservation
Allows an initiator to reserve and release a SCSI device.
Done with SCSI reserve and release commands.
The release can happen when there is a SCSI bus reset. During error recoevry also SCSI Bus reset is performed..
Only works with single path.
SPC-2 supports both SCSI-2 and SCSI-3 reservations in a mutually exclusive way.
All subsequent SCSI persistent and SCSI-2 reservations will fail when already reserved via SCSI-2 reservation command.
SPC-3 deprecates classic reserve and release machanism over SCSI-3 method.

SCSI-3 reservation named persistent reservations.
Reservation is persistent across SCSI bus reset.
Done via SCSI Persist reserve OUT and IN commands.
supports reservations with multipath and multiple nodes accessing the same SCSI device.
uses the concept of registration and reservation.
Persistent reservations allow multiple clients(initiators) to communicate with a tracking multiple
initiator to target relationship called I_T nexus.
Actions performed are
-Initiator will register to target and creates a new registration key
-Initiator will read the existing registrations and reservations .
-Intiator can alter existing registrations.
-Initiator issues reserve actions to lock on a specific LUN
-Initiator releases the lock when done and releases the regostration also inf no more required.

How to reslve SCSI-2 reservation conflicts from a host?
Host can clear with a lun reset or target reset.

Warning: A target reset will abort all commands on all LUNs mapped to the initiator that issued this command.
It will also abort commands from other initiators to the LUNs that are accessed by the initiator from which
the abort was initiated.

Source: What are SCSI Reservations and SCSI Persistent Reservations?

Page 1 of 5
1 2 3 5