stanford-oval/wikipedia huggingface dataset:
كيس البنكرياس
التشخيص

عادة ما تُكتشف التكيسات البنكرياسية بالصدفة عند إجراء التصوير الطبي لأغراض أخرى، وعادة ما تكون بدون أعراض. في بعض الأحيان، يمكن تشخيص التكيسات البنكرياسية بشكل قاطع بناءً على نتائج التصوير من التصوير بالرنين المغناطيسي أو التصوير المقطعي المحوسب مع مادة التباين. ومع ذلك، في بعض الأحيان يكون التصوير الإضافي مطلوبًا، مثل الموجات فوق الصوتية بالمنظار مع أو بدون الخزعة بالإبرة أو تصوير البنكرياس والقنوات الصفراوية بالرنين المغناطيسي. يتمتع التصوير بالموجات فوق الصوتية بالمنظار بدقة أعلى في تشخيص السمات الشعاعية عالية الخطورة للتكيسات البنكرياسية مقارنة بالتصوير بالرنين المغناطيسي، خاصة إذا اُستخدم تحسين التباين أيضًا. بناءً على التصوير، تُعتبر التكيسات التي تسبب انسدادًا صفراويًا، وتوسع القناة البنكرياسية الرئيسية أكبر من 10 مم، ولها كتلة في جدرانها أكبر من 5 مم، من السمات عالية الخطورة وترتبط بخطر الإصابة بالسرطان بنسبة 56-89٪. يُعتبر حجم الكيس أكبر من 3 سم، أو توسع القناة البنكرياسية الرئيسية من 5 إلى 10 مم، أو تغير في قطر أو تضييق القناة البنكرياسية الرئيسية مع ضمور القناة من الناحية البعيدة، أو وجود تورم في العقد الليمفاوية، أو سماكة أو تعزيز جدران الكيس، أو زيادة في حجم الكيس على مدار عام، من نتائج التصوير متوسطة الخطورة للإصابة بالسرطان.
يمكن أيضًا استخدام الفحوصات المخبرية والنتائج السريرية الأخرى لتقييم خطر الإصابة بأورام خبيثة في تكيسات البنكرياس. يُعتبر ارتفاع المؤشر الحيوي CA19-9، وظهور مرض السكري حديثًا، والتهاب البنكرياس، وآلام البطن أو فقدان الوزن، كلها من السمات عالية الخطورة، مع وجود اليرقان كسمة عالية الخطورة جدًا.
يمكن أن يساعد التحليل الخلوي لسائل الكيس في تمييز نوع تكيس البنكرياس الموجود، ولكنه ليس مفيدًا في تحديد درجة الخباثة. ومع ذلك، فإن التحليل الخلوي للسائل عن طريق الخزعة بالإبرة لديه خصوصية منخفضة حيث أن معظم العينات تحتوي فقط على سائل بدون أنواع خلايا محددة. تشير المستويات المرتفعة من الأميلاز في السائل إلى وجود اتصال بالقناة البنكرياسية، مما يشير إلى وجود كيس كاذب أو ورم حليمي مخاطي داخل القنوات. تشير المستويات المتزايدة من المستضد السرطاني المضغي إلى وجود تكيسات مخاطية في 75٪ من الحالات، والمستويات المنخفضة جدًا من المستضد السرطاني المضغي تستبعد بشكل فعال التكيسات المخاطية. ويُعد انخفاض مستويات الجلوكوز في سائل الكيس مفيدًا في التمييز (بحساسية تقريبية 90٪ وخصوصية 85٪ عند حد فاصل 50 ملجم/ديسيلتر) بين التكيسات المخاطية وغير المخاطية، حيث تحتوي التكيسات المخاطية على مستوى منخفض من الجلوكوز بينما تحتوي التكيسات غير المخاطية على مستوى عالٍ من الجلوكوز.
قد يساعد تحليل الحمض النووي لسائل الكيس في تشخيص تكيسات البنكرياس، ولكن النتائج متغيرة، بين 25-50٪. ترتبط طفرات الجين الكابت للورم فون هيبل - لينداو (المرتبطة بمرض فون هيبل لينداو) بالتكيسات البسيطة، والأورام الغدية الكيسية المصلية، وبشكل أقل شيوعًا أورام الغدد الصم العصبية البنكرياسية. ترتبط طفرات كيراس بالتكيسات المخاطية، وترتبط طفرات GNAS بأورام حليمية مخاطية داخل قنوية، وترتبط طفرات بيتا-كاتينين بالأورام الصلبة الحليمية الكاذبة.
الأنواع

الأكياس الكاذبة البنكرياسية حميدة، مع خطر تطور خبيث بنسبة 0٪. ترتبط الأكياس الكاذبة بالتهاب البنكرياس الحاد أو المزمن وعادةً ما تتصل الأكياس بالقناة البنكرياسية الرئيسية. عادةً ما تزول تلقائيًا وتكون وحيدة التجويف (غير مقسومة؛ أي لا تحتوي على جدران تفصل أجزاء الكيس) وقد تكون مفردة أو متعددة.
الأورام الغدية الكيسية المصلية حميدة أيضًا، مع خطر تحول خبيث بنسبة 0٪ وعادةً ما تظهر في العقد الخامس إلى السابع من العمر مع وجود 60٪ من الحالات لدى النساء. لا تتصل هذه الأورام بالقناة البنكرياسية الرئيسية. تختلف خصائصها التصويرية وقد وُصِفت بأنها متعددة الكيسات بمظهر يشبه خلية النحل، مع وجود أنواع أقل شيوعًا تكون صلبة أو كبيرة الكيسات أو وحيدة التجويف. قد تحتوي الأورام الغدية الكيسية المصلية على ندبة مركزية في الكيس تظهر في التصوير المقطعي المحوسب أو التصوير بالرنين المغناطيسي، وهذا من خصائص هذا النوع، ولكنه يُرى فقط في 30٪ من الحالات.
الأورام الحليمية المخاطية داخل الأقنية (IPMN) تشمل القناة البنكرياسية الرئيسية (الأورام الحليمية المخاطية داخل الأقنية الرئيسية) أو فروعها (الأورام الحليمية المخاطية داخل الأقنية الفرعية) أو كليهما (النوع المختلط). تُعتبر الأورام الحليمية المخاطية داخل الأقنية آفات ما قبل سرطانية حيث أن الأقنية الرئيسية لديها احتمالية خباثة بنسبة 33-85٪، بينما الأقنية الفرعية لديها خطر الإصابة بالخباثة بنسبة 15٪ خلال 15 عامًا. عادةً ما تحدث الأورام الحليمية المخاطية داخل الأقنية خلال العقد الخامس من العمر ولها معدل إصابة متساوٍ بين الذكور والإناث. قد تظهر على شكل آفات مفردة أو متعددة، وقد تسبب التهاب البنكرياس نتيجة انسداد القناة البنكرياسية بالموسين.
عادةً ما تشمل الأورام الكيسية المخاطية البنكرياسية ذيل البنكرياس، وتشمل 90٪ من الحالات النساء، وعادةً ما تظهر في العقد الرابع إلى السادس من العمر. لديها احتمالية خباثة بنسبة 10-34٪. لا تتصل هذه الأورام بالقنوات البنكرياسية وعادةً ما تظهر على شكل آفات مفردة ذات جدران سميكة غير مقسمة (تحتوي على حجرة واحدة). تتميز هذه الأورام باحتوائها على خلايا سدوية من النوع المبيضي.
قد تخضع أورام الغدد الصماء العصبية البنكرياسية أحيانًا إلى تنكس كيسي مُشكّلةً أكياسًا. تنشأ هذه الأنواع من الأورام من خلايا الغدد الصماء البنكرياسية، و10٪ منها وظيفية، قادرة على إفراز الهرمونات. تتميز هذه الأورام في التصوير بجدرانها السميكة. تُعبّر 80٪ من هذه الأورام عن مستقبلات السوماتوستاتين، مما يسمح برؤيتها في فحوصات الغاليوم.
إرشادات المتابعة

عادةً ما تكون الأكياس التي يتراوح حجمها من 1 إلى 5 مم في التصوير المقطعي المحوسب أو تخطيط الصدى الطبي صغيرة جدًا بحيث لا يمكن تحديد خصائصها وتُعتبر حميدة. لا يُوصى بإجراء متابعة تصويرية أخرى لهذه الآفات. تتطلب الأكياس التي يتراوح حجمها من 6 إلى 9 مم متابعة واحدة خلال 2-3 سنوات، ويُفضل استخدام تصوير البنكرياس والأقنية الصفراوية بالرنين المغناطيسي لتقييم قناة البنكرياس بشكل أفضل. إذا كانت مستقرة في المتابعة، فلا يُوصى بإجراء متابعة تصويرية أخرى. بالنسبة للأكياس التي يتراوح حجمها من 1 إلى 1.9 سم، يُقترح المتابعة باستخدام تصوير البنكرياس والأقنية الصفراوية أو التصوير المقطعي متعدد المراحل خلال 1-2 سنة. إذا كانت مستقرة في المتابعة، تزداد الفترة الفاصلة للمتابعة التصويرية إلى 2-3 سنوات. الأكياس التي يتراوح حجمها من 2 إلى 2.9 سم لديها احتمالية خباثة أكبر، ويُقترح إجراء تصوير بالموجات فوق الصوتية بالمنظار كخط أساس، يليه تصوير البنكرياس والأقنية الصفراوية أو التصوير المقطعي متعدد المراحل خلال 6-12 شهرًا. إذا كان المرضى صغارًا في السن، فقد يُؤخذ التدخل الجراحي في الاعتبار لتجنب الحاجة إلى المراقبة المطولة. إذا كانت هذه الأكياس مستقرة في المتابعة، فيمكن إجراء متابعة تصويرية على فترات تتراوح بين 1-2 سنة.
مغارة الديدرية

| مغارة الديدرية | مغارة الديدرية |
| --- | --- |
عثر بالكهف على هذا الهيكل العظمي لطفل الديدرية الأول مات بعمر سنتينعثر بالكهف على هذا الهيكل العظمي لطفل الديدرية الأول مات بعمر سنتين: عثر بالكهف على هذا الهيكل العظمي لطفل الديدرية الأول مات بعمر سنتينعثر بالكهف على هذا الهيكل العظمي لطفل الديدرية الأول مات بعمر سنتين
الموقع: محافظة حلب، سوريا
إحداثيات: الإحداثيات: خط العرض مفقود تم تمرير الوسائط غير الصالحة إلى الدالة {{#coordinates:}} function
النوع: كهف
الحضارات: عصر حجري قديم
الحالة: تعرض للتخريب بسنة 2012
الملكية: عام
الاتاحة للجمهور: غير معروف
ar: ar
تعديل مصدري - تعديل  : تعديل مصدري - تعديل  
مغارة الديدرية(الكُرديّة: Du deriyê) وتعني في اللّغة الكُرديّة(البابَين)، هي مغارة أثرية من عصور ما قبل التاريخ تقع بسلسلة جبال سمعان في عفرين بمحافظة حلب ، بدأت التنقيبات فيها عام 1987 وفي عام 1993 اكتشف فيها هيكل عظمي لطفل الديدرية الأول الذي عاش فيها بين 100 ألف و40 ألف سنة مضت يظهر دفنه طقوس دفن شعائري عند النياندرتال، يعود دفنه إلى العصر الحجري القديم الوسيط. وقد تعاقبت على المغارة ثلاث حضارات مهمة وهي الحضارة اليبرودية، والموسيترية، والنطوفية
الوصف

يبلغ طول المغارة 60 متر وعرضها 15 متر بينما ترتفع 10 أمتار، ويتكون القسم الرئيس من المغارة من 15 طبقة أثرية، بلغ سمكها 5 أمتار
الاكتشافات

قامت بعثة سورية-يابانية بالتنقيب بالكهف بسنة 1993. وتم العثور على بقايا 15 شخصاً، وأهمها الهيكل العظمي لطفل عمره 2.5 سنة تقريباً المعروف بطفل الديدرية الأول، وهو طفل نياندرتال كان قد دفن في حفرة مستلقياً على ظهره، ويداه ممدودتان، وقدماه مثنيان، وتحت رأسه بلاطة حجرية، وعلى صدره من جهة القلب أداة صوانية عليها مؤشرات تدل على عملية دفن شعائري هي من أقدم ما عرف في العالم. تمت إعادة تركيب الهيكل العظمي بعد حفظ عظامه بمواد كيميائية بعمل مشترك قام به السوري سلطان محيسن والياباني آكاوازا من جامعة كوتشي للتكنولوجيا.
وعثر على هيكل لطفل آخر وجد عام 1997 بطبقة أعمق، كما وجد أدوات حجرية وعظم ظهر سلحفاة  ، كما اكتشف بقايا هيكل عظمي لطفل نياندرتال يعود تاريخه إلى ما قبل 50 ألف سنة وهو الثالث في كهف الديدرية.
التخريب خلال الحرب الأهلية السورية

تشير المديرية العامة للآثار والمتاحف في سوريا بأن الكهف تعرض للتخريب بسنة 2012 وتقول بتقريرها:
«تعرض كهف الديدرية في جبل سمعان لأعمال تخريب شملت مربعات التنقيب والمقاطع الأثرية التي نَقَّبتها سابقاً البعثة الأثرية العاملة في الموقع، وسُرِقَت عدّة التنقيب وكمية كبيرة من ألواح وأعمدة خشبية موجودة ضمن المستودع كانت تستخدم في أعمال التنقيب، إضافة إلى الأضرار التي ذُكرت سابقاً في هذا التقرير».
فيريلوج (برمجة)

فيريلوج (برمجة)
| 0 | 1 |
| --- | --- |
التصنيف:  لغة توصيف العتاد — لغة نمذجة 
التنميط:  برمجة مهيكلة 
ظهرت في:  1984 
| 0 | 1 |
| --- | --- |
الإصدار الأول:   1984  
الإصدار الأخير:   IEEE 1800-2023 
| 0 | 1 |
| --- | --- |
متأثرة بـ:  سي — باسكال — أيدا 
| 0 | 1 |
| --- | --- |
امتدادات الملفات:  v 
تعديل - تعديل مصدري - تعديل ويكي بيانات
لغه فيريلوج الموحدة كـ معهد مهندسي الكهرباء والإلكترونيات 1364 ، هي لغة توصيف العتاد (HDL) المستخدمة لنمذجة الأنظمة الإلكترونية. كما تستخدم هذه اللغة بشكل شائع وكبير في التصميم، والتحقق من الدوائر الرقمية على مستوى نقل التسجيل للتجريد. كما وتستخدم أيضًا في التحقق من الدوائر التناظرية ودوائر الإشارة المختلطة، وكذلك في تصميم الدوائر الجينية. في عام 2009، تم دمج معيار Verilog (IEEE 1364-2005) في معيار SystemVerilog ، مما أدى إلى إنشاء معيار IEEE 1800-2009. منذ ذلك الحين، أصبحت لغه فيريلوج رسميًا جزءًا من لغة نظام فيريلوج.وهو الإصدار الحالي هو IEEE القياسي 1800-2017.
الملخص

في الواقع فإن لغات وصف الأجهزة مثل لغه فيريلوج تشبه لغات برمجة البرامج لأنها تتضمن طرقًا لوصف وقت الانتشار ونقاط قوة الإشارة (الحساسية). كما انه من الجدير بالذكر هناك نوعان من عوامل التخصيص؛ تخصيص حظر (=)، وتخصيص غير معطل (<=). يسمح التعيين غير المحظور للمصممين بوصف تحديث حالة الجهاز دون الحاجة إلى الإعلان عن متغيرات التخزين المؤقتة واستخدامها. نظرًا لأن هذه المفاهيم جزء من دلالات لغة فيريلوج، في الواقع فإنه يمكن للمصممين كتابة أوصاف الدوائر الكبيرة بسرعة في شكل مضغوط ومختصر نسبيًا. في وقت تقديم فيريلوج (1984)، فلقد مثل فيريلوج تحسينًا هائلاً للإنتاجية والتي تصب في مصلحه مصممي الدوائر الذين كانوا يستخدمون بالفعل برنامج التقاط تخطيطي رسومي وبرامج برامج مكتوبة خصيصًا لتوثيق ومحاكاة الدوائر الإلكترونية.
الفكرة من لغه فيريلوج هو ان المصممين ارادوا بناء جملة مشابهة للغة البرمجة C ، وهي لغه البرجمه التي كانت تستخدم على بالفعل على نطاق واسع في تطوير البرمجيات الهندسية. مثل C ، في الواقع فإن لغه فيريلوج تعتبر حساسًا لحالة الأحرف ولديه معالج أولي أساسي (على الرغم من أنه أقل تعقيدًا من معالج ANSI C / C ++). الكلمات الرئيسية لتدفق التحكم (if / else ، for ، while ، case ، إلخ) متكافئة، وأسبقية المشغل متوافقة مع C. تتضمن الاختلافات النحوية: عروض البت المطلوبة للإعلانات المتغيرة، ترسيم الكتل الإجرائية (تبدأ استخدامات Verilog / end بدلاً من الأقواس المتعرجة {})، كما انها تحمل العديد من الاختلافات الطفيفة الأخرى.إنه من الجدير بالذكر ان لغه فيريلوج تتطلب اعطاء المتغيرات حجما محددا. في لغة C ، يُستدل على هذه الأحجام من «نوع» المتغير (على سبيل المثال، قد يكون نوع العدد الصحيح 8 بت).
يتكون تصميم لغه فيريلوج من تسلسل هرمي للوحدات. تقوم الوحدات بتغليف التسلسل الهرمي للتصميم ، وتتواصل مع الوحدات النمطية الأخرى من خلال مجموعة من المدخلات والمخرجات والمنافذ ثنائية الاتجاه المعلنة. داخليًا، كما انه يمكن أن تحتوي الوحدة النمطية على أي مجموعة من العناصر التي سوف اقوم الآن بذكرها: التصريحات الصافية / المتغيرة (الأسلاك، والتسجيل، والعدد الصحيح، وما إلى ذلك)، وكتل العبارات المتزامنة والمتسلسلة، ومثيلات الوحدات النمطية الأخرى (التسلسلات الهرمية الفرعية). يتم وضع التعليمات المتسلسلة داخل كتلة البداية / النهاية ويتم تنفيذها بترتيب تسلسلي داخل الكتلة. ومع ذلك، يتم تنفيذ الكتل ذاتها بشكل متزامن، مما يجعل فيريلوج لغة تدفق بيانات والتي تصب في مصلحه المصممين بشكل خاص أكثر من غيرهم.
مفهوم لغه فيريلوج هو عباره عن «السلك» من قيم الإشارة (4 حالات: «1، 0، عائم، غير محدد») ونقاط قوة الإشارة (قوية، ضعيفة، إلخ.). كما انه في الواقع يسمح هذا النظام بالنمذجة المجردة لخطوط الإشارة المشتركة، بحيث تقود المصادر المتعددة شبكة مشتركة. عندما يحتوي السلك على محركات متعددة، فإنه بهذه الطريقة يتم حل قيمة السلك (المقروءة) من خلال وظيفة محركات المصدر ونقاط قوتها.
وهي عباره عن مجموعة فرعية من العبارات الموجوده في لغة فيريلوجوالتي تكون قابلة للتجميع.كما يمكن تحقيق وحدات فيريلوج التي تتوافق مع أسلوب الترميز القابل للتركيب، والمعروف باسم RTL (مستوى نقل التسجيل)، فعليًا عن طريق برنامج التوليف. يحول برنامج التوليف خوارزميًا مصدر للغة فيريلوج (المجرد) إلى netlist ، وهذا الوصف في الحقيقة يعتبر وصفا مكافئ منطقيًا يتكون فقط من العناصر الأولية المنطقية (AND ، OR ، NOT ، flip-flops ، إلخ) المتوفرة في تقنية FPGA أو VLSI محددة. كما تؤدي المعالجات الإضافية إلى netlist في النهاية إلى مخطط تصنيع الدائرة (على سبيل المثال مجموعة قناع الصورة لـ ASIC أو ملف bitstream لـ FPGA).
التاريخ > في البداية

تم إنشاء لغة فيريلوج في بدايه الامر بواسطة Prabhu Goel و Phil Moorby و Chi-Lai Huang و Douglas Warmke وقد تم هذا الامر بين أواخر عام 1983 وأوائل عام 1984. عمل Chi-Lai Huang في وقت سابق على وصف الأجهزة LALSD ، وهي لغة طورها الأستاذ SYH Su لعمل الدكتوراهالتي يدرسها في مجال تخصصه. كان صاحب حقوق هذه العملية، في ذلك الوقت مملوكًا، هو "Automated Integrated Design Systems" (أعيدت تسميته لاحقًا إلى Gateway Design Automation في عام 1985). تم شراء Gateway Design Automation بواسطة Cadence Design Systems في عام 1990. يتمتع Cadence الآن بحقوق ملكية كاملة لـ Gateway's Verilog و Verilog-XL ، وهو جهاز محاكاة HDL الذي سيصبح المعيار الفعلي (لمحاكيات فيريلوج المنطقية) للعقد القادم من الزمن. كان المقصد الاصلي والهدف الاساسي من لغة فيريلوج يقتصر فقط على وصف المحاكاة والسماح بها؛ ثم بعد ذلك تم تطوير التوليف الآلي لمجموعات فرعية من اللغة إلى هياكل قابلة للتحقيق فعليًا (بوابات وما إلى ذلك) بعد أن حققت اللغة استخدامًا واسع النطاق لكونهم حظيو بالكثير من الدعم.
فيريلوج عبارة عن حافظة لكلمات «التحقق» و «المنطق».
التاريخ > فيريلوج 95

مع النجاح المتزايد الذي حظيت به VHDL في ذلك الوقت، قررت شركه Cadence إتاحة اللغة للتوحيد القياسي المفتوح. قامت شركة كادنس بتحويل لغة فيريلوجإلى المجال العام تحت منظمة Open Verilog International وهي تعرف بـ (OVI) (المعروفة الآن باسم Accellera). تم تقديم Verilog لاحقًا إلى IEEE وأصبح معيار IEEE 1364-1995، والذي يشار إليه عادةً باسم فيريلوج 95.
في نفس الإطار الزمني وفي تلك المدة تحديدا، بدأت شركه Cadence في إنشاء Verilog-A لوضع دعم المعايير خلف جهاز المحاكاة التناظرية Specter .كما انه لم يكن القصد من Verilog-A أن تكون لغة قائمة بذاتها وهي مجموعة فرعية من Verilog-AMS والتي تشمل Verilog-95.
التاريخ > فيريلوج 2001

تم إرسال ملحقات فيريلوج 95 مرة أخرى إلى IEEE لتغطية أوجه القصور التي وجدها المستخدمون في معيار Verilog الأصلي. أصبحت هذه الامتدادات فيما بعد معيار IEEE 1364-2001 المعروف باسم فيريلوج 2001.
تعد فيريلوج 2001 من أهم الترقيات التي حصلت لنظام فيريلوج 95 التي تسبقها. أولاً، تمت اضافه دعمًا صريحًا للشبكات والمتغيرات الموقعة (2).كما انه مما ينبغي عليك معرفته انه في سابق الامر، كان على مؤلفي الكود إجراء عمليات موقعة باستخدام معالجات على مستوى البت (على سبيل المثال، تتطلب قطعة التنفيذ لإضافة 8 بت بسيطة وصفًا واضحًا للجبر المنطقي لتحديد قيمتها الصحيحة). يمكن وصف الوظيفة نفسها ضمن فيريلوج-2001 بشكل أكثر إيجازًا بواسطة أحد المشغلين المدمجين: + ، - ، / ، * ، >>>. يسمح إنشاء: إنشاء / إنشاء نهائي (على غرار إنشاء / إنشاء VHDL) لـ فيريلوج-2001 بالتحكم في مثيل وبيان إنشاء مثيل من خلال مشغلي القرار العاديين (حالة / إذا / آخر). باستخدام إنشاء / إنشاء، يمكن لـ Verilog-2001 إنشاء مثيل لمجموعة من المثيلات، مع التحكم في اتصال الحالات الفردية. تم تحسين إدخال / إخراج الملف من خلال العديد من مهام النظام الجديدة. وأخيرًا وليس اخرا، تم تقديم بعض الإضافات النحوية لتحسين قابلية قراءة الكود في هذا الإصدار من النظام (على سبيل المثال، دائمًا، @ * ، تجاوز المعلمة المسماة، إعلان رأس الوظيفة / المهمة / الوحدة النمطية على غرار C).
فيريلوج 2001 هو إصدار من لغة البرمجة فيريلوج المدعوم بمعظم حزم برامج EDA التجارية.
التاريخ > فيريلوج 2005

يجب عدم الخلط بينه وبين SystemVerilog (نظام فيريلوج)، تتكون g 2005 (لغه فيريلوج IEEE Standard 1364-2005) من تصحيحات طفيفة وتوضيحات المواصفات وبعض ميزات اللغة الجديدة (مثل الكلمة الأساسية uwire).
يحاول جزء منفصل من معيار لغة فيريلوج للبرمجة، Verilog-AMS ، دمج نمذجة الإشارات التناظرية والمختلطة مع Verilog التقليدي.
التاريخ > النظام الخاص بـ لغة فيريلوج

ظهور الأجهزة التحقق من اللغات مثل OpenVera ، Verisity لـ e اللغة تشجيع تطوير Superlog لمن شارك في تصميم Automation Inc (التي حصل عليها سينوبسيس). أسس Superlog وفيرا ثم قام بالتبرع بـ Accellera ، الذي أصبح فيما بعد IEEE القياسية لنظام فيريلوج P1800-2005: SystemVerilog.
نظام فيريلوج SystemVerilog وهو يعد مجموعة شاملة من فيريلوج-2005، مع العديد من الميزات والقدرات الجديدة للمساعدة في التحقق من التصميم ونمذجة التصميم. اعتبارًا من عام 2009، تم دمج معايير لغة نظام فيريلوج SystemVerilog وولغه فيريلوج ذاتها في SystemVerilog 2009 (IEEE Standard 1800-2009). الإصدار الحالي هو IEEE القياسي 1800-2017.
مثال

فيما يلي سيتم ذكر مثال بسيط على flip-flops:
module toplevel(clock,reset);
 input clock;
 input reset;

 reg flop1;
 reg flop2;

 always @ (posedge reset or posedge clock)
  if (reset)
   begin
    flop1 <= 0;
    flop2 <= 1;
   end
  else
   begin
    flop1 <= flop2;
    flop2 <= flop1;
   end
endmodule
يعد <= في لغة فيريلوج جانبًا آخر لكونه لغة وظيفتها هي وصف الأجهزة بدلاً من اللغة الإجرائية العادية المتعارف عليها. كما انه يُعرف هذا باسم التخصيص «غير المحظور». لا يتم تسجيل الإجراء الخاص به إلا بعد تنفيذ الكتلة دائمًا. هذا يعني أن ترتيب التخصيصات غير ذي صلة وسوف ينتج نفس النتيجة: flop1 و flop2 سيتبادلان القيم كل ساعة على الدوام.
اما عن = فهو عامل التخصيص الآخر والذي يشار اليه على أنه تخصيص حجب. فإنه عند استخدامك لعامل التخصيص هذا = الإسناد، لأغراض المنطق، يتم تحديث المتغير الهدف على الفور. في المثال الذي رأيته سابقا، لو استخدمت العبارات = blocking بدلاً من <= ، لما تم تبديل flop1 و flop2. بدلاً من ذلك، كما هو الحال في البرمجة التقليدية، سيفهم المترجم ببساطة تعيين flop1 مساويًا لـ flop2 (وبالتالي يتجاهل المنطق الزائد لضبط flop2 مساويًا لـ flop1).
يتبع مثال دارة العداد:
module Div20x (rst, clk, cet, cep, count, tc);
// TITLE 'Divide-by-20 Counter with enables'
// enable CEP is a clock enable only
// enable CET is a clock enable and
// enables the TC output
// a counter using the Verilog language

parameter size = 5;
parameter length = 20;

input rst; // These inputs/outputs represent
input clk; // connections to the module.
input cet;
input cep;

output [size-1:0] count;
output tc;

reg [size-1:0] count; // Signals assigned
           // within an always
           // (or initial)block
           // must be of type reg

wire tc; // Other signals are of type wire

// The always statement below is a parallel
// execution statement that
// executes any time the signals
// rst or clk transition from low to high

always @ (posedge clk or posedge rst)
 if (rst) // This causes reset of the cntr
  count <= {size{1'b0}};
 else
 if (cet && cep) // Enables both true
  begin
   if (count == length-1)
    count <= {size{1'b0}};
   else
    count <= count + 1'b1;
  end

// the value of tc is continuously assigned
// the value of the expression
assign tc = (cet && (count == length-1));

endmodule
مثال على التأخيرات:
...
reg a, b, c, d;
wire e;
...
always @(b or e)
 begin
  a = b & e;
  b = a | b;
  #5 c = b;
  d = #6 c ^ e;
 end
شرط دائما المذكوره في المثال الموضح اعلاه تشير إلى نوع آخر من طرق الاستخدام، أي أنه ينفذ أي من الكيانات في القائمة (ب أو ه) يتغير. عند أحد هذه التغييرات، يتم تعيينه على الفور قيمة جديدة، كما ان ذلك يرجع إلى التنازل حظر، ثم بعد ذلك يتم تعيين ب قيمة جديدة (مع الأخذ في الاعتبار قيمة جديدة ل).
بعد تأخير دام 5 وحدات الوقت، يتم تعيين ج قيمة ب وقيمة ج ^ ه هو مدسوس بعيدا في مخزن غير مرئية. اما الخطوة الاخير فهي: بعد 6 وحدات زمنية أخرى، يتم تعيين القيمة التي تم وضعها بعيدًا عن د.
هناك نقطه يجب التنويه عليها الا وهي انه يجب أن تكون الإشارات التي يتم دفعها من داخل عملية (كتلة أولية أو دائمًا) من النوع reg . أيضا يجب أن تكون الإشارات التي يتم دفعها من خارج العملية من النوع السلكي . الكلمة الأساسية reg لا تعني بالضرورة وجود سجل للأجهزة.
تعريف الثوابت

ندعم تعريف الثوابت في لغة فيريلوج إضافة معلمة عرض. :
< العرض بالبايت > '< الحرف الأساسي > < رقم > ماسبق عرضه هنا هو الصيغة الاساسيه
أمثلة:
12'h123 - سداسي عشري 123 (باستخدام 12 بايتًا)
20'd44 - عشري 44 (باستخدام 20 بت - 0 تمديد تلقائي)
4'b1010 - ثنائي 1010 (باستخدام 4 بايت)
6'o77 - أوكتال 77 (باستخدام 6 بايت)
مبدئي ودائم

في الواقع يوجد هناك طريقتان منفصلتان للإعلان عن عملية فيريلوج. هذه هي الكلمات الرئيسية دائمًا والأولية (.Initial and always) تشير الكلمة الأساسية دائمًا إلى عملية التشغيل الحر. تشير الكلمة الأساسية الأولية إلى تنفيذ العملية لمرة واحدة بالضبط. يبدأ كلا البناءين التنفيذ في وقت المحاكاة 0، كما يتم تنفيذ كلاهما حتى نهاية الكتلة.اما بمجرد وصول الكتلة دائمًا إلى نهايتها، تتم إعادة جدولتها (مرة أخرى). ومن الجدير بالذكر انه من المفاهيم الخاطئة الشائعة: الاعتقاد بأن كتلة أولية سيتم تنفيذها قبل حظر دائمًا. في الواقع أرى أنه من الأفضل التفكير في الكتلة الأولية كحالة خاصة للكتلة دائمًا ، والتي تنتهي بعد إكتمالها لأول مرة.
//Examples:
initial
 begin
  a = 1; // Assign a value to reg a at time 0
  #1; // Wait 1 time unit
  b = a; // Assign the value of reg a to reg b
 end

always @(a or b) // Any time a or b CHANGE, run the process
begin
 if (a)
  c = b;
 else
  d = ~b;
end // Done with this block, now return to the top (i.e. the @ event-control)

always @(posedge a)// Run whenever reg a has a low to high change
 a <= b;
هذه هي الاستخدامات الكلاسيكية أو الاعتياديه لهاتين الكلمتين الرئيسيتين، ولكن هناك استخدامان إضافيان مهمان يجدر علي التطرق اليهما وذكرهما . الأكثر شيوعًا هو الكلمة الأساسية دائمًا بدون قائمة الحساسية @ (...). من الممكن استخدامها دائمًا كما هو موضح أدناه:
always
 begin // Always begins executing at time 0 and NEVER stops
  clk = 0; // Set clk to 0
  #1; // Wait for 1 time unit
  clk = 1; // Set clk to 1
  #1; // Wait 1 time unit
 end // Keeps executing — so continue back at the top of the begin
في الواقع فإن عمل الكلمة الأساسية دائمًا بشكل مشابه لتكوين لغة C بينما (1) {..} بمعنى أنها ستنفذ إلى الأبد.

المثال أدناه مطابق وظيفيًا للمثال أعلاه دائمًا. always
initial forever // Start at time 0 and repeat the begin/end forever
 begin
  clk = 0; // Set clk to 0
  #1; // Wait for 1 time unit
  clk = 1; // Set clk to 1
  #1; // Wait 1 time unit
 end
الانضمام

يتم استخدام الانضمام بواسطة لغة فيريلوج لإنشاء عمليات متوازية. هل تعلم ان جميع العبارات (أو الكتل) تبدأ بين زوج مفترق / صلة بالتنفيذ في وقت واحد عند وصول تدفق التنفيذ إلى Fork . كما انه يستمر هذا التنفيذ بعد الانضمام عند اكتمال أطول بيان أو كتلة قيد التشغيل بين fork و Join .
initial
 fork
  $write("A"); // Print char A
  $write("B"); // Print char B
  begin
   #1; // Wait 1 time unit
   $write("C"); // Print char C
  end
 join
بالطريقة التي تمت بها كتابة ما سبق، من الممكن طباعة التسلسلات "ABC" أو "BAC". يعتمد ترتيب المحاكاة بين أول $ write و $ write الثانية على تنفيذ المحاكي، وقد يتم اختياره عشوائيًا عن طريق المحاكي في لغة فيريلوج .كما ان هذا يسمح للمحاكاة باحتواء كل من ظروف السباق العرضي بالإضافة إلى السلوك المتعمد غير الحتمي في لغه فيريلوج
لاحظ أن VHDL لا يمكن أن تنتج عمليات متعددة ديناميكيًا مثل لغة فيريلوج.
شروط السباق

كما انه لا يتم ضمان ترتيب التنفيذ دائمًا في لغة فيريلوج. يمكن توضيح ذلك بأفضل شكل من خلال مثال كلاسيكي والذي سوف نعرضه لكم ادناه:
initial
 a = 0;

initial
 b = a;

initial
 begin
  #1;
  $display("Value a=%d Value of b=%d",a,b);
 end
ماهو الامر أو ما الذي سيتم طباعته لقيمتي أ وب؟ في واقع الأمر واعتمادًا على ترتيب تنفيذ الكتل الأولية، فإنه من الممكن أن يكون صفرًا وصفرًا، أو بالتناوب صفر وبعض القيم التعسفية غير المهيأة. سيتم تنفيذ عبارة $ display دائمًا بعد اكتمال مجموعتي التعيين، بسبب التأخير رقم 1.