Mengapa teorema bahaya lomba bekerja?

12

Jadi bagi mereka yang tidak tahu, the hazard hazard theorem (RHT) menyatakan bahwa:

A x B + A 'x C = A x B + A' x C + B x C

Saya memahami bagian lain dari RHT, tentang penundaan waktu dan semacamnya, tetapi saya tidak mengerti mengapa pernyataan logika di atas harus benar, dapatkah seseorang membantu saya memahami hal ini?

Alex Robinson
sumber

Jawaban:

20

Seperti yang telah ditunjukkan orang lain, secara matematis pernyataannya persis sama, dan istilah tambahannya adalah "berlebihan". Itu juga akan "berlebihan" bagi saya untuk menyalin bukti matematika mereka di sini.

Anda juga dapat dengan mudah memverifikasi pernyataan yang setara dengan membuat tabel kebenaran 8 baris untuk tiga kombinasi input.

    A B C           A*B + A'*C                       A*B + A'*C + B*C
    0 0 0               0                                    0
    0 0 1               1                                    1
    0 1 0               0                                    0
    0 1 1               1  ** hazard b/w states              1
    1 0 0               0                                    0
    1 0 1               0                                    0
    1 1 0               1                                    1
    1 1 1               1  ** hazard b/w states              1

Tujuan dari istilah tambahan adalah untuk mencegah A dari menyebabkan toggling setiap kali B dan C tinggi.

Sebagai contoh, misalkan ada waktu tunda yang terbatas antara A dan A '(masuk akal). Sekarang juga pertimbangkan bahwa B dan C adalah '1'. Seperti yang Anda lihat dalam bentuk gelombang di bawah ini, ada kesalahan pada output.

bahaya

Dengan asumsi logikanya CMOS statis, kesalahannya dapat dipulihkan. Tapi, jika itu adalah beberapa bentuk logika dinamis, itu bisa menyebarkan kesalahan.

Penambahan istilah redundan adalah solusi untuk menutupi kesalahan.

jbord39
sumber
2
Menunduk karena ini bahkan tidak berusaha menjawab pertanyaan yang diajukan. Itu menjawab pertanyaan yang berbeda.
user253751
@ Imibis Jelas penanya tidak apa-apa dengan jawaban ini.
glglgl
@immibis Selain itu, tanpa jawaban ini, banyak hal yang tidak begitu jelas.
glglgl
@glglgl Penanya secara khusus mengatakan dia sudah tahu bagian ini.
user253751
4
@immibis: Sejujurnya, sebagian besar jawabannya adalah latar belakang, tetapi intinya ada di paragraf pertama: tuliskan tabel kebenaran. Kedua sisi persamaan itu identik, karena tabel kebenarannya identik. Untuk semua 8 nilai yang mungkin dari A, B dan C, kiri dan kanan sama. Jawaban selanjutnya menjelaskan mengapa pada kenyataannya, kita tidak dapat berasumsi bahwa {A,A',B,C}dibatasi hanya 8 nilai; ada kondisi A = A sementara ini.
MSalters
9

Bukti oleh aljabar Boolean:

A x B + A 'x C [Sisi kiri]
= A x B x 1 + A' x C x 1 [Tidak disederhanakan DAN dengan true]
= A x B x (1 + C) + A 'x C x ( 1 + B) [Benar ATAU apa pun]
= A x B x 1 + A x B x C + A 'x 1 x C + A' x B x C [Mendistribusikan]
= A x B + A x B x C + A 'x C + A' x B x C [Sederhanakan DAN dengan true]
= A x B + A 'x C + A x B x C + A' x B x C [Susun ulang istilah]
= A x B + A 'x C + (A + A ') x B x C [Factorize]
= A x B + A' x C + 1 x B x C [ATAU negasi benar]
= A x B + A 'x C + B x C [ Sisi kanan]

Bukti berdasarkan kasus:

  • Misalkan B x C benar.
    Maka B benar dan C benar secara bersamaan.
    Jadi sisi kanan menjadi A x B + A 'x C + 1 x 1 = 1.
    Sisi kiri menjadi A x 1 + A' x 1, yaitu 1 terlepas dari A.
    Oleh karena itu LHS sama dengan RHS.
  • Misalkan B x C salah.
    Kemudian sisi kanan menjadi A x B + A 'x C + 0 = A x B + A' x C, membuatnya identik dengan LHS.
    Karenanya LHS sama dengan RHS.

Dalam semua kasus, LHS sama dengan RHS. Oleh karena itu kami menyimpulkan bahwa kedua formula selalu mengevaluasi ke nilai yang sama.

Referensi:

Nayuki
sumber
8

Pertimbangkan LHS dengan sendirinya:
A x B + A 'x C

Jika B dan C benar dalam pernyataan ini, apakah kondisi A membuat perbedaan pada hasilnya?
Tidak - karena (A x B) atau (A 'x C) akan benar, menghasilkan hasil yang benar.

Jadi sekarang melihat RHS, istilah 2 DAN pertama hanyalah duplikat dari LHS, dan istilah 3 DAN mewakili apa yang baru saja kita ketahui tentang B & C.

brhans
sumber
3

SEBUAHB+SEBUAHC+BC=SEBUAHB+SEBUAHC+(SEBUAH+SEBUAH)BC - Kalikan istilah BC dengan 1=SEBUAHB+SEBUAHC+SEBUAHBC+SEBUAHBC - Mendistribusikan istilah=(SEBUAHB+SEBUAHBC)+(SEBUAHC+SEBUAHBC) - berkumpul kembali=SEBUAHB(1+C)+SEBUAHC(1+B) - faktor=SEBUAHB+SEBUAHC - Sederhanakan

pgvoorhees
sumber
2

Mari kita lihat peta karnaugh :

CBCBCBCBSEBUAH0110SEBUAH1100

SEBUAHBSEBUAHCBC .

SEBUAHBSEBUAHCBC

aneh ratchet
sumber