سبارك

سبارك 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 جي فلوب).

لا يزال النص الموجود في هذه الصفحة في مرحلة الترجمة إلى العربية. إذا كنت تعرف اللغة المستعملة، لا تتردد في الترجمة. (سبتمبر 2016)

الخصائص

تأثرت بنية سبارك بشدة بتصاميم ريسك السابقة عليها بما فيها ريسك 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.[1] في الإصدار 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 (كيبيبايت)

الاسم (الاسم الرمزي) النموذج (ميجا هيرتز) التردد رقم الإصدار سنة الإصدار عدد الخيوط[2] عملية التصنيع (ميكرومتر) عدد الترانزستورات (مليون) حجم القالب (مليمتر مربع) عدد إبر الإدخال\الإخراج الطاقة المبددة (وات) فرق الجهد حجم الذاكرة المخبأة بيانات تعليمات (كيبيبايت)L2 (كيبيبايت)L3
SPARC (various), including MB86900[3] 14.28–40V71987–19921×1=10.8–1.3~0.1–1.8--160–256----0–128 (unified)nonenone
microSPARC I (Tsunami) TI TMS390S10 40–50V819921×1=10.80.8225?2882.5524nonenone
SuperSPARC I (Viking) TI TMX390Z50 / Sun STP1020 33–60V819921×1=10.83.1--29314.3516200-2048none
SPARClite Fujitsu MB8683x 66–108V8E19921×1=1------144–176--2.5/3.3V1–161–16nonenone
hyperSPARC (Colorado 1) Ross RT620A 40–90V819931×1=10.51.5------5?08128-256none
microSPARC II (Swift) Fujitsu MB86904 / Sun STP1012 60–125V819941×1=10.52.323332153.3816nonenone
hyperSPARC (Colorado 2) Ross RT620B 90–125V819941×1=10.41.5------3.308128-256none
SuperSPARC II (Voyager) Sun STP1021 75–90V819941×1=10.83.1299--16--16201024-2048none
hyperSPARC (Colorado 3) Ross RT620C 125–166V819951×1=10.351.5------3.308512-1024none
TurboSPARC Fujitsu MB86907 160–180V819961×1=10.353.013241673.51616512none
UltraSPARC (Spitfire) Sun STP1030 143–167V919951×1=10.475.231552130[4]3.31616512-1024none
UltraSPARC (Hornet) Sun STP1030 200V919981×1=10.425.2265521--3.31616512-1024none
hyperSPARC (Colorado 4) Ross RT620D 180–200V819961×1=10.351.7------3.31616512none
SPARC64 Fujitsu (HAL) 101–118V919951×1=10.4--Multichip286503.8128128----
SPARC64 II Fujitsu (HAL) 141–161V919961×1=10.35--Multichip286643.3128128----
SPARC64 III Fujitsu (HAL) MBCS70301 250–330V919981×1=10.2417.6240----2.564648192--
UltraSPARC IIs (Blackbird) Sun STP1031 250–400V919971×1=10.355.414952125[5]2.516161024 or 4096none
UltraSPARC IIs (Sapphire-Black) Sun STP1032 / STP1034 360–480V919991×1=10.255.412652121[6]1.916161024–8192none
UltraSPARC IIi (Sabre) Sun SME1040 270–360V919971×1=10.355.4156587211.91616256–2048none
UltraSPARC IIi (Sapphire-Red) Sun SME1430 333–480V919981×1=10.255.4--58721[7]1.916162048none
UltraSPARC IIe (Hummingbird) Sun SME1701 400–500V919991×1=10.18 Al----37013[8]1.5-1.71616256none
UltraSPARC IIi (IIe+) (Phantom) Sun SME1532 550–650V920001×1=10.18 Cu----37017.61.71616512none
SPARC64 GP Fujitsu SFCB81147 400–563V920001×1=10.1830.2217----1.81281288192--
SPARC64 GP -- 600–810V9--1×1=10.1530.2------1.51281288192--
SPARC64 IV Fujitsu MBCS80523 450–810V920001×1=10.13----------1281282048--
UltraSPARC III (Cheetah) Sun SME1050 600V9 / JPS120011×1=10.18 Al293301368531.664328192none
UltraSPARC III (Cheetah) Sun SME1052 750–900V9 / JPS120011×1=10.13 Al29--1368--1.664328192none
UltraSPARC III Cu (Cheetah+) Sun SME1056 1002–1200V9 / JPS120011×1=10.13 Cu29232136880[9]1.664328192none
UltraSPARC IIIi (Jalapeño) Sun SME1603 1064–1593V9 / JPS120031×1=10.1387.5206959521.364321024none
SPARC64 V (Zeus) Fujitsu 1100–1350V9 / JPS120031×1=10.13190289269401.21281282048--
SPARC64 V+ (Olympus-B) Fujitsu 1650–2160V9 / JPS120041×1=10.094002972796511281284096--
UltraSPARC IV (Jaguar) Sun SME1167 1050–1350V9 / JPS120041×2=20.136635613681081.35643216384none
UltraSPARC IV+ (Panther) Sun SME1167A 1500–2100V9 / JPS120051×2=20.092953361368901.16464204832768
UltraSPARC T1 (Niagara) Sun SME1905 1000–1400V9 / UA 200520054×8=320.093003401933721.38163072none
SPARC64 VI (Olympus-C) Fujitsu 2150–2400V9 / JPS120072×2=40.09540422--120--1281285120none
ألترا سبارك تي 2 (Niagara 2) Sun SME1908A 1000–1600V9 / UA 200720078×8=640.0655033421831951.1–1.58164096none
UltraSPARC T2 Plus (Victoria Falls) Sun SME1910A 1200–1600V9 / UA 200720088×8=640.0655033421831--8164096none
SPARC64 VII (Jupiter) [10] Fujitsu 2400–2880V9 / JPS120082×4=80.065600445--135--64646144none
UltraSPARC "RK" (Rock)[11] Sun SME1832 2300V9 / --canceled[12]2×16=320.065?3962326??32322048?
SPARC64 VIIIfx (Venus)[13][14] Fujitsu2000V9 / JPS120091x8=80.045?????????
SPARC T3 (Rainbow Falls) Oracle/Sun1650V9 / UA _?_2010 8×16=1280.040[15]????371?139?8166144none
SPARC64 VII+ (???) Fujitsu2667 - 3000V9 / JPS12010 2x4=8------12812812288none
الاسم (الاسم الرمزي) النموذج التردد (ميجاهيرتز) رقم الإصدار سنة الإصدار عدد الخيوط [2] عملية التصنيع (ميكرومتر) عدد الترانزستورات (مليون) حجم القالب (مليمتر مربع) عدد إبر الإدخال\الإخراج الطاقة المبددة (وات) فرق الجهد حجم الذاكرة المخبأة بيانات تعليمات (كيبيبايت)L2 (كيبيبايت)L3

دعم نظام التشغيل

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

التطبيقات مفتوحة المصدر

هناك أربع تطبيقات من بنية سبارك مفتوحة المصدر بشكل كامل.

  • ليون تطبيق 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، [17] وهو 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)

المراجع

  1. http://www.sparc.org/standards/SPARCV9.pdf نسخة محفوظة 18 يناير 2012 على موقع واي باك مشين. The SPARC Architecture Manual Version 9
  2. (الخيوط في النواة الواحدة مضروبا في عدد الأنوية)
  3. Various 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.
  4. @167 MHz
  5. @250 MHz
  6. @400 MHz
  7. @440 MHz
  8. max@500 MHz
  9. @900 MHz
  10. "FX1 Key Features & Specifications" (PDF). Fujitsu. 2008-02-19. مؤرشف من الأصل (PDF) في 29 أبريل 2016. الوسيط |CitationClass= تم تجاهله (مساعدة)
  11. "A Third-Generation 65nm 16-Core 32-Thread Plus 32-Scout-Thread CMT SPARC(R) Processor" (PDF). Sun Microsystems. 2008-02-19. مؤرشف من الأصل في 22 يوليو 2012. الوسيط |CitationClass= تم تجاهله (مساعدة)
  12. Vance, Ashlee (2009-06-15). "Sun Is Said to Cancel Big Chip Project". The New York Times. مؤرشف من الأصل في 22 مايو 2018. اطلع عليه بتاريخ 23 مايو 2010. الوسيط |CitationClass= تم تجاهله (مساعدة)
  13. "Fujitsu shows off SPARC64 VII". (28 August 2008). heise online. نسخة محفوظة 02 يونيو 2009 على موقع واي باك مشين.
  14. Sylvie Barak. "Fujitsu unveils world's fastest CPU". مؤرشف من الأصل في 04 يناير 2018. الوسيط |CitationClass= تم تجاهله (مساعدة); تحقق من التاريخ في: |تاريخ أرشيف= (مساعدة)
  15. (PDF) https://web.archive.org/web/20160424054305/http://www.oracle.com/us/products/servers-storage/servers/sparc-enterprise/t-series/sparc-t3-chip-ds-173097.pdf. مؤرشف من الأصل (PDF) في 24 أبريل 2016. اطلع عليه بتاريخ أغسطس 2020. الوسيط |CitationClass= تم تجاهله (مساعدة); تحقق من التاريخ في: |تاريخ الوصول= (مساعدة); مفقود أو فارغ |title= (مساعدة)
  16. "Intergraph Announces Port of Windows NT to SPARC Architecture". The Florida SunFlash. 1993-07-07. مؤرشف من الأصل في 28 ديسمبر 2018. الوسيط |CitationClass= تم تجاهله (مساعدة)
  17. "Fujitsu FX1, Quadcore SPARC64 VII 2.52 GHz, Infiniband DDR". مؤرشف من الأصل في 8 نوفمبر 2011. اطلع عليه بتاريخ أكتوبر 2020. الوسيط |CitationClass= تم تجاهله (مساعدة); تحقق من التاريخ في: |تاريخ الوصول= (مساعدة)

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


    • بوابة علم الحاسوب
    • بوابة عقد 1980
    • بوابة تقنية المعلومات
    This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.