سبارك

سبارك SPARC (بنية المعالج القابل للتوسع) هي مجموعة تعليمات ريسك RISC طورتها شركة صن ميكروسيستمز وأصدرتها في منتصف عام 1987.
سبارك علامة تجارية مسجلة لشركة سبارك إنترناشونال SPARC International، وهي مؤسسة أنشئت عام 1989 لتطويربنية سبارك وإدارة علامات سبارك التجارية وتقديم اختبار مطابقة المواصفات. بدأ تصميم واستخدام تطبيقات بنية سبارك 32-بت الأصلية في محطة عمل صن-4 Sun-4 workstation وأنظمة الخوادم وحلت محل أنظمة صن-3 التي بنيت على عائلة المعالجات موتورولا 68000 Motoro]]a 68000. ثم استخدمت معالجات سبارك فيما بعد في خوادم إس إم بي SMP من إنتاج شركة صن ميكروسيستمز وسولبورن Solbourne وفوجيتسو وآخرين، وتم تصميمها لتجري العمليات التي تحتاج 64-بت.
كان الخطة أن تفتح سبارك انترناشيونال بنية سبارك لإتاحة بيئة أوسع لتطوير التصميم الذي تم ترخيصه لعدد من الشركات المصنعة بما فيها تكساس إنسترمنتز Texas Instruments وأتميل Atmel وسيبرس سيميكوندكتور Cypress Semiconductor وفوجيتسو. ونتيجة لوجود سبارك إنترناشيونال أصبحت بنية سبارك متاحة بالكامل ولا تمتلكها جهة بعينها.
في مارس 2006 أصدرت صن ميكروسيستمزالتصميم الكامل لمعالجها الدقيق ألتراسبارك تي1 UltraSPARC T1، وهو مفتوح المصدر ومتاح على OpenSPARC.net، وسمته أوبن سبارك تي1 OpenSPARC T1. وفي عام 2007 أصدرت صن أيضا تصميم مفتوح المصدر لمعالجها الدقيق ألتراسبارك تي2 تحت اسم أوبن سبارك تي2، أنظر OpenSPARC.net.
وفي يونيو 2009 استخدمت فوجيتسو تصميم سبارك لعمل معالج Venus SPARC64 VIIIfx القادر على إجراء 128 مليار عملية فاصلة عائمة في الثانية (128 جي فلوب).

 الخصائص 
تأثرت بنية سبارك بشدة بتصاميم ريسك السابقة عليها بما فيها ريسك 1 و2 الذين صدرا عن جامعة كاليفورنيا، بركلي وآي بي إم 801 IBM 801. كانت هذه التصميمات الأولى تتيح أقل قدر ممكن من الإمكانيات وأكواد العمليات opcodes، وكانت تحاول تنفيذ الأوامر بمعدل أمر واحد في كل دورة ساعة تقريبا، وهذا يجعلها مشابهة بنية ميبز في عدة وجوه مثل غياب بعض العمليات كالضرب والقسمة، خاصية أخرى من خصائص سبارك التي تأثرت بإصدارات ريسك الأولى هي خاصية أمر تأخير التفرع.
يحتوي معالج سبارك عادة على 160 سجل عام، يستطيع أي برنامج الوصول إلي 32 منهم فقط في أي وقت، 8 منهم يستطيع النظام بأكمله استخدامهم (واحد منهم g0 يحتوي دائمأعلى القيمة 0 لذلك 7 سجلات فقط هم القابلين للاستخدام) و24 من مكدس السجلات، وهذه تمثل ما يسمى بنافذة السجلات وتتحرك هذه النافذة صعودا وهبوطا في مكدس السجلات مع عملية مناداة\رجوع الدالة، تحتوي كل نافذة على 8 سجلات وتشترك في 8 مع كل من النوافذ المجاورة، وتستخدم السجلات المشتركة في تمرير متغيرات الدالة والقيم الراجعة، وتستخدم السجلات المحلية في الاحتفاظ بالقيم التي تستخدم داخل نطاق الدالة نفسها.
ومصدر تعبير «قابل للتوسع» المستخدم مع سبارك هو أن مواصفات سبارك تتيح للتطبيقات المختلفة أن تبدأ من المعالجات المدمجة وتتوسع وصولا إلى معالجات الخوادم العملاقة، تشترك جميعا في نفس مجموعة التعليمات الأساسية (الغير مميزة). أحد معاملات التصميم القابلة للتوسع هو عدد نوافذ السجلات. تسمح مواصفات المعالج بـ 3 نوافذ إلى 32 بالتالي يمكن لأي تطبيق أن يختار استخدام الـ32 نافذة جميعا لتحقيق أفضل كفاءة لمكدس المناداة أو استخدام 3 فقط لتقليل زمن تغيير السياق أو استخدام أي رقم بينهما. من الأنظمة التي تحتوي على خاصية ملف السجلات المماثلة إنتل آي960 Intel i960 وإيتانيوم (معالج) وإيه إم دي 29000 AMD 29000.

وخضعت البنية لعدة مراجعات، وأضيفت لها عمليتي الضرب والقسمة في الإصدار 8، وأهم تحديث جرى عليها هو الإصدار 9 وهو بيان مواصفات سبارك 64-بت (لكل من العناوين والبيانات) الذي نشر في 1994.http://www.sparc.org/standards/SPARCV9.pdf  The SPARC Architecture Manual Version 9
في الإصدار 8 من سبارك يحتوي ملف سجلات الفاصلة العائمة على 16 سجل مزدوج الدقة، يمكن استخدام أي منهم كسجل أحادي الدقة بمجمل 32 سجل أحادي الدقة، ويمكن استخدام أي رقم فردي-زوجي من أزواج السجلات مزدوجة الدقة كسجلات رباعية الدقة، ويسمح العدد هنا ب 8 سجلات رباعية الدقة. وأضاف الإصدار9 من سبارك 16 سجل مزدوج الدقة (التي يمكن استخدامها أيضا كـ 8 سجلات رباعية الدقة) لكن لا يمكن استخدام هذه السجلات الإضافية كسجلات أحادية الدقة.
تؤدي عمليات الإضافة والطرح الموسومة حساباتها على اعتبار أن آخر 2 بت لا تشارك في العملية الحسابية، وهذا قد يفيد\يكون له فائدة في تطبيق نظام وقت التشغيل لـلغة ليسب وإم إل وعدد من اللغات المشابهة التي تستخدم الأعداد الصحيحة الموسومة.

أسلوب ترتيب البيانات (endianness) المستخدم في سبارك الإصدار8 32-بت هو ترتيب بالإعلى (big-endian). سبارك الإصدار9 64-بت يستخدم الترتيب بالإعلى في التعليمات بينما يمكنه الوصول للبيانات بالتريب بالأعلى أو الترتيب بالأدنى للبايتات وهو ما يتحدد إما على مستوى أوامر البرنامج (load/store) أو على مستوى صفحة الذاكرة memory page (من خلال إعدادات وحدة إدارة الذاكرة MMU)، وتستخدم الوسيلة الأخيرة عادة في الوصول إلى بيانات من أجهزة تستخدم الترتيب بالأدنى دائما مثل ناقلات PCI.

 خلفية 
خضعت البنية لثلاث مراجات رئيسية، أول مراجعة نشرت كانت سبارك 32-بت الإصدار7 (V7) في 1986، وسبارك الإصدار8 وهو تعريف محسن لبنية سبارك تم إصداره عام 1990. الفروق الرئيسية بين الإصدارين كانت إضافة عمليتي الضرب والقسمة، ووصول عمليات الفاصلة العائمة الرياضية «مطولة الدقة» 80-بت إلى عمليات «رباعية الدقة» 128-بت. وكان سبارك الإصدار8 بمثابة الأساس الذي بني عليه معيار IEEE 1754-1994 لبنية المعالج الدقيق 32-بت.
صدر سبارك الإصدار9 - 64-بت –عن سبارك إنترناشيونال في 1993 وقامت بتطويره اللجنة المسئولة عن بنية سبارك التي ضمت كلا من أمدال كوربروريشن Amdahl Corporation وفوجيتسو وآي سي إل ICL وإل إس آي لوجيك LSI Logic وباناسونيك وفيليبس Phi]]ips وروس تكنولوجي Ross Technology وصن ميكروسيستمز وتكساس إنسترمنتز.
في 2002 أصدرت شركتي صن وفوجيتسو بيان مواصفات البرمجة المشتركة 1 Joint Programming Specification 1 (JPS1) لسبارك تصف وظائف المعالج المتطابقة في وحدات المعالجة المركزية لكلا الشركتين («عمومية»). أول وحدة معالجة مركزية مطابقة لـموصفات JPS1 كانت ألتراسبارك3 من شركة صن وسبارك64 في من شركة فوجيتسو. وتضمنت «ملحقات التطبيق» الخاصة بكل معالج الوظائف التي لم يرد ذكرها في JPS1.
في بدايات عام 2006 أصدرت شركة صن بيان مواصفات مفصل باسم بنية ألتراسبارك 2005 UltraSPARC Architecture 2005، وهذه لم تتضمن الأجزاء الغير مميزة ومعظم الأجزاء المميزة في سبارك الإصدار9 فحسب ولكن كل ما تم إضافته لبنية معالجات ألتراسبارك (مثل CMT وhyperpriviliged وVIS 1 وVIS 2) بدءً من تطبيق ألتراسبارك تي1، كما تضمنت هذه المواصفات كل إضافات شركة صن القياسية وتطابق بيان مواصفات سبارك الإصدار9 المستوى 1.
وأصدرت صن في 2007 بيان مواصفات أحدث وهو بنية ألتراسبارك 2007 UltraSPARC Architecture 2007 وتطبيق ألتراسبارك تي2 يطابق هذه المواصفات.
البنية متوافقة ثنائيا في كل إصداراتها بدايةً من سبارك الإصدار7 عام 1987 حتى إصدارات ألتراسبارك من صن.

ومن ضمن تطبيقات سبارك العديدة كانت تطبيقات شركة صن سوبرسبارك SuperSPARC وألتراسبارك-1 UltraSPARC-I من أكثرها شهرة واستخدمت في مؤسسة سبيك SPEC كنظام مرجعي لقياس آداء CPU95 وCPU2000، واستخدمت المؤسسة أيضا ألتراسبارك-2 296 ميجاهيرتز كنظام مرجعي لقياس آداء CPU2006.
تم ترخيص بنية سبارك للعديد من الشركات التي طورت وصنعت التطبيقات المختلفة مثل:
 أفارا ويب سيستمز
 بايبولار إنتيجريتد تكنولوجي
 سي-كيوب
 سيبريس سيميكوندكتور
 إلبرس
 فوجيتسو
 هال كمبيوتر سيستمز
 هيونداي
 إل إس آي لوجيك
 ماجنم سيميكوندكتور
 ميكو ساينتفيك
 ميتافلو تكنولوجي
 روس تكنولوجي
 بارسي سيميكوندكتور
 ساينتيفيك أتلانتا
 سولبورن كمبيوتر
 ويتيك

 مواصفات معالجات سبارك الدقيقة 
يحتوي هذا الجدول على مواصفات بعض معالجات سبارك: التردد (ميجاهيرتز), رقم الإصدار، سنة الإصدار، عدد الخيوط threads (الخيوط في النواة الواحدة مضروبا في عدد الأنوية)، عملية التصنيع (ميكرومتر)، عدد الترانزستورات (مليون)، حجم القالب (مليمتر مربع)، عدد إبر الإدخال\الإخراج، الطاقة المبددة (وات)، فرق الجهد، حجم الذاكرة المخبأة بيانات، تعليمات، L2 وL3 (كيبيبايت)

    الاسم (الاسم الرمزي)    النموذج (ميجا هيرتز) التردد  رقم الإصدار    سنة الإصدار عدد الخيوط(الخيوط في النواة الواحدة مضروبا في عدد الأنوية) عملية التصنيع (ميكرومتر) عدد الترانزستورات (مليون)  حجم القالب (مليمتر مربع)    عدد إبر الإدخال\الإخراج الطاقة المبددة (وات) فرق الجهد حجم الذاكرة المخبأة بيانات تعليمات (كيبيبايت)L2 (كيبيبايت)L3SPARC(various), including MB86900Various SPARC V7 implementations were produced by Fujitsu, LSI Logic, Weitek, Texas Instruments and Cypress. A SPARC V7 processor generally consisted of several discrete chips, usually comprising an integer unit (IU), a وحدة الفاصلة العائمة (FPU), a وحدة إدارة الذاكرة (حاسب آلي) (MMU) and cache memory.14.28–40V71987–19921×1=10.8–1.3~0.1–1.8--160–256----0–128 (unified)nonenonemicroSPARC I (Tsunami)TI TMS390S1040–50V819921×1=10.80.8225?2882.5524nonenoneSuperSPARC I (Viking)TI TMX390Z50 / Sun STP102033–60V819921×1=10.83.1--29314.3516200-2048noneSPARCliteFujitsu MB8683x66–108V8E19921×1=1------144–176--2.5/3.3V1–161–16nonenonehyperSPARC (Colorado 1)Ross RT620A40–90V819931×1=10.51.5------5?08128-256nonemicroSPARC II (Swift)Fujitsu MB86904 / Sun STP101260–125V819941×1=10.52.323332153.3816nonenonehyperSPARC (Colorado 2)Ross RT620B90–125V819941×1=10.41.5------3.308128-256noneSuperSPARC II (Voyager)Sun STP102175–90V819941×1=10.83.1299--16--16201024-2048nonehyperSPARC (Colorado 3)Ross RT620C125–166V819951×1=10.351.5------3.308512-1024noneTurboSPARCFujitsu MB86907160–180V819961×1=10.353.013241673.51616512noneUltraSPARC (Spitfire)Sun STP1030143–167V919951×1=10.475.231552130@167 MHz3.31616512-1024noneUltraSPARC (Hornet)Sun STP1030200V919981×1=10.425.2265521--3.31616512-1024nonehyperSPARC (Colorado 4)Ross RT620D180–200V819961×1=10.351.7------3.31616512noneSPARC64Fujitsu (HAL)101–118V919951×1=10.4--Multichip286503.8128128----SPARC64 IIFujitsu (HAL)141–161V919961×1=10.35--Multichip286643.3128128----SPARC64 IIIFujitsu (HAL) MBCS70301250–330V919981×1=10.2417.6240----2.564648192--UltraSPARC IIs (Blackbird)Sun STP1031250–400V919971×1=10.355.414952125@250 MHz2.516161024 or 4096noneUltraSPARC IIs (Sapphire-Black)Sun STP1032 / STP1034360–480V919991×1=10.255.412652121@400 MHz1.916161024–8192noneUltraSPARC IIi (Sabre)Sun SME1040270–360V919971×1=10.355.4156587211.91616256–2048noneUltraSPARC IIi (Sapphire-Red)Sun SME1430333–480V919981×1=10.255.4--58721@440 MHz1.916162048noneUltraSPARC IIe (Hummingbird)Sun SME1701400–500V919991×1=10.18 Al----37013max@500 MHz1.5-1.71616256noneUltraSPARC IIi (IIe+) (Phantom)Sun SME1532550–650V920001×1=10.18 Cu----37017.61.71616512noneSPARC64 GPFujitsu SFCB81147400–563V920001×1=10.1830.2217----1.81281288192--SPARC64 GP --600–810V9--1×1=10.1530.2------1.51281288192--SPARC64 IVFujitsu MBCS80523450–810V920001×1=10.13----------1281282048--UltraSPARC III (Cheetah)Sun SME1050600V9 / JPS120011×1=10.18 Al293301368531.664328192noneUltraSPARC III (Cheetah)Sun SME1052750–900V9 / JPS120011×1=10.13 Al29--1368--1.664328192noneUltraSPARC III Cu (Cheetah+)Sun SME10561002–1200V9 / JPS120011×1=10.13 Cu29232136880@900 MHz1.664328192noneUltraSPARC IIIi (Jalapeño)Sun SME16031064–1593V9 / JPS120031×1=10.1387.5206959521.364321024noneمعالجات SPARC 64 (Zeus)Fujitsu1100–1350V9 / JPS120031×1=10.13190289269401.21281282048--معالجات SPARC 64 (Olympus-B)Fujitsu1650–2160V9 / JPS120041×1=10.094002972796511281284096--UltraSPARC IV (Jaguar)Sun SME11671050–1350V9 / JPS120041×2=20.136635613681081.35643216384noneUltraSPARC IV+ (Panther)Sun SME1167A1500–2100V9 / JPS120051×2=20.092953361368901.16464204832768UltraSPARC T1 (Niagara)Sun SME19051000–1400V9 / UA 200520054×8=320.093003401933721.38163072noneمعالجات SPARC 64 (Olympus-C) Fujitsu2150–2400V9 / JPS120072×2=40.09540422--120--1281285120noneألترا سبارك تي 2 (Niagara 2)Sun SME1908A1000–1600V9 / UA 200720078×8=640.0655033421831951.1–1.58164096noneUltraSPARC T2 Plus (Victoria Falls)Sun SME1910A1200–1600V9 / UA 2007 2008 8×8=640.0655033421831 -  - 8164096noneSPARC64 VII (Jupiter)  Fujitsu2400–2880V9 / JPS120082×4=80.065600445--135--64646144noneUltraSPARC "RK" (Rock)Sun SME18322300V9 / --canceled2×16=320.065?3962326??32322048?معالجات SPARC 64 (Venus)"Fujitsu shows off SPARC64 VII". (28 August 2008). heise online.  Fujitsu2000V9 / JPS120091x8=80.045?????????SPARC T3 (Rainbow Falls)Oracle/Sun1650V9 / UA _?_ 2010 8×16=1280.040???? 371?139?8166144noneSPARC64 VII+ (???)Fujitsu2667 - 3000V9 / JPS1 2010 2x4=8------12812812288none       الاسم (الاسم الرمزي)       النموذج التردد (ميجاهيرتز) رقم الإصدار            سنة الإصدار عدد الخيوط  عملية التصنيع (ميكرومتر) عدد الترانزستورات (مليون) حجم القالب (مليمتر مربع)              عدد إبر الإدخال\الإخراج الطاقة المبددة (وات) فرق الجهد حجم الذاكرة المخبأة بيانات تعليمات  (كيبيبايت)L2  (كيبيبايت)L3

 دعم نظام التشغيل 
أجهزة سبارك تستخدم عادة صن أو إس أو سولاريس أو أوبن سولاريس، ولكنها استخدمت أنظمة أخرى مثل نكست ستيب NeXTSTEP وآر تيمز RTEMS وفري بي إس دي وأوبن بي إس دي ونت بي إس دي ولينكس.
في 1993 أعلنت شركة إنترجراف عن منقذ من ويندوز إن تي لبنية سبارك  وأغلقته فيما بعد.

 التطبيقات مفتوحة المصدر 
هناك أربع تطبيقات من بنية سبارك مفتوحة المصدر بشكل كامل.
 ليون تطبيق 32-بت لسبارك الإصدار8، صمم خصيصا لاستغلال المساحة، كوده المصدري مكتوب بلغة في إتش دي إل، ويخضع لرخصة جنو العمومية
 رامب جولد: تطبيق 32-بت لسبارك الإصدار8، 64-خيط، صمم كمحاكاة للبنية التي تستخدم الدائرة المتكاملة FPGA. كود رامب جولد يحتوي على 36000 سطر تقريبا بلغة سيستم فيريلوج، ويخضع لرخص بي إس دي.
 أوبن سبارك تي1: تطبيق 64-بت، 32-خيط مطابق لمواصفات بنية ألتراسبارك 2005 وسبارك الإصدار9 (مستوى 1)، وتم إصداره في 2006. كوده المصدري بلغة فيريلوج. يخضع لعدة رخص، يخضع معظم كوده المصدري لرخصة جنو العمومية، والكود المبني على أكواد مشاريع مفتوحة المصدر يخضع لنفس الرخص الحالية لهذه المشاريع. البرامج الثنائية تخضع لترخيص البرامج الثنائية.
 إس 1 كور: معالج دقيق متوافق مع ناقل ويشبون Wishbone مبني على تصميم أوبن سبارك تي1، وهو معالج ألتراسبارك 9 وحيد النواة قادر على إجراء تنفيذ متعدد متزامن SMT في 4 اتجاهات. ويخضع كوده المصدري مثل تي1 لرخصة جنو العمومية.
 أوبن سبارك تي2 تطبيق 64-بت، 64-خيط، مطابق لمواصفات بنية ألتراسبارك 2007 وسبارك إصدار 9 (مستوى 1)، صدر عام 2008. كوده المصدري مكتوب بلغة فيريلوج ويخضع لعدة رخص، معظمه يخضع لرخصة جنو العمومية، والكود المبني على مشاريع مفتوحة المصدر يخضع لنفس الرخص الحالية لهذه المشاريع. البرامج الثنائية تخضع لترخيص البرامج الثنائية.

 الحواسيب الفائقة 
في عام 2009 شملت قائمة أسرع 500 حاسوب فائق في العالم حاسوب واحد فقط يستخدم معالجات سبارك الدقيقة طبقا لقائمة توب500،  وهو FX1 من فوجيتسو وحصل على المركز الـ28 بسرعة 121282 جيفلوبز، وهو يستخدم المعالجات الدقيقة SPARC64 VII رباعية النواة بسرعة 2.52 ميجاهيرتز، تم تجميعه بواسطو بنية دي دي آر إنفيني باند DDR Infiniband. استخدم في أحد مرافق منظمة البحوث اليابانية، في 2002 كان هناك 88 حاسوب يستخدم معالجات سبارك الدقيقة في قائمة توب500 ولكنه منذ حينها في تراجع في مقابل الشرائح الأخرى من آي بي إم وإنتل وإيه إم دي.
في ديسمبر 2010 كشفت أوراكل عن سبارك سوبر كلستر SPARC SuperCluster في خادم T3-4 الذي تفوق على Integrity Superdome من HP وPower 780 من IBM ووصل إلى سرعات 30,249,688 tpmC (transaction per minute)

 المراجع 

 الوصلات الخارجية 



تصنيف:استحداثات متعلقة بالحواسيب في 1985