মাইক্রোসেমি লোগোস্মার্টফিউশন 2
ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার
সূচনা পদ্ধতি
ব্যবহারকারীর নির্দেশিকা

ভূমিকা

একটি SmartFusion2 ডিভাইস ব্যবহার করে একটি ডিজাইন তৈরি করার সময়, আপনি যদি দুটি DDR কন্ট্রোলার (FDDR বা MDDR) বা সিরিয়াল হাই স্পিড কন্ট্রোলার (SERDESIF) ব্লকগুলির একটি ব্যবহার করেন, তাহলে আপনাকে অবশ্যই রান-টাইমে এই ব্লকগুলির কনফিগারেশন রেজিস্টার শুরু করতে হবে। তারা ব্যবহার করা যেতে পারে। প্রাক্তন জন্যample, DDR কন্ট্রোলারের জন্য, আপনাকে অবশ্যই DDR মোড (DDR3/DDR2/LPDDR), PHY প্রস্থ, বার্স্ট মোড এবং ECC সেট করতে হবে।
একইভাবে, PCIe এন্ডপয়েন্ট হিসেবে ব্যবহৃত SERDESIF ব্লকের জন্য, আপনাকে PCIE BAR-কে AXI (বা AHB) উইন্ডোতে সেট করতে হবে।
এই দস্তাবেজটি একটি Libero ডিজাইন তৈরি করার জন্য প্রয়োজনীয় পদক্ষেপগুলি বর্ণনা করে যা স্বয়ংক্রিয়ভাবে DDR কন্ট্রোলার এবং SERDESIF ব্লকগুলিকে পাওয়ার আপে আরম্ভ করে। এটি এম্বেডেড ডিজাইন প্রবাহে ব্যবহৃত Libero SOC থেকে ফার্মওয়্যার কোড কীভাবে তৈরি করতে হয় তাও বর্ণনা করে।
অপারেশন তত্ত্বের একটি বিশদ বিবরণ প্রথমে দেওয়া হয়।
পরবর্তী বিভাগে বর্ণনা করা হয়েছে কিভাবে Libero SoC সিস্টেম বিল্ডার ব্যবহার করে এমন একটি ডিজাইন তৈরি করা যায়, এটি একটি শক্তিশালী ডিজাইন টুল যা অন্যান্য বৈশিষ্ট্যগুলির মধ্যে, আপনি যদি আপনার ডিজাইনে DDR বা SERDESIF ব্লকগুলি ব্যবহার করেন তবে আপনার জন্য 'ইনিশিয়ালাইজেশন' সমাধান তৈরি করে।
পরবর্তী বিভাগে বর্ণনা করা হয়েছে কিভাবে SmartFusion2 সিস্টেম বিল্ডার ব্যবহার না করে একটি সম্পূর্ণ 'ইনিশিয়ালাইজেশন' সমাধান একসাথে রাখা যায়। আপনি যদি সিস্টেম বিল্ডার ব্যবহার করতে না চান তবে এটি কী করা দরকার তা ব্যাখ্যা করতে সাহায্য করে এবং সিস্টেম বিল্ডার টুলটি আসলে আপনার জন্য কী তৈরি করে তাও বর্ণনা করে। এই বিভাগে ঠিকানা:

  • DDR কন্ট্রোলার এবং SERDESIF কনফিগারেশন রেজিস্টারের জন্য কনফিগারেশন ডেটা তৈরি করা
  • বিভিন্ন ASIC কনফিগারেশন রেজিস্টারে কনফিগারেশন ডেটা স্থানান্তর করার জন্য প্রয়োজনীয় FPGA লজিক তৈরি করা

অবশেষে আমরা উত্পন্ন বর্ণনা fileএর সাথে সম্পর্কিত:

  • ফার্মওয়্যার 'ইনিশিয়ালাইজেশন' সমাধান তৈরি করা।
  • ডিডিআর 'ইনিশিয়ালাইজেশন' সমাধানের জন্য ডিজাইনের সিমুলেশন।

DDR কন্ট্রোলার এবং SERDESIF কনফিগারেশন রেজিস্টার সম্পর্কে বিস্তারিত জানার জন্য, দেখুন মাইক্রোসেমি স্মার্টফিউশন 2 হাই স্পিড সিরিয়াল এবং ডিডিআর ইন্টারফেস ব্যবহারকারীর নির্দেশিকা।

অপারেশন তত্ত্ব

পেরিফেরাল প্রারম্ভিক সমাধান নিম্নলিখিত প্রধান উপাদান ব্যবহার করে:

  • CMSIS SystemInit() ফাংশন, যা Cortex-M3-এ চলে এবং আরকেস্ট্রেট করে শুরু করার প্রক্রিয়া।
  • CoreConfigP সফট আইপি কোর, যা পেরিফেরালের কনফিগারেশন রেজিস্টার শুরু করে।
  • CoreResetP সফট আইপি কোর, যা MSS, DDR কন্ট্রোলার এবং SERDESIF ব্লকের রিসেট ক্রম পরিচালনা করে।

পেরিফেরাল প্রারম্ভিক প্রক্রিয়া নিম্নরূপ কাজ করে:

  1. রিসেট করার পরে, Cortex-M3 CMSIS SystemInit() ফাংশন চালায়। অ্যাপ্লিকেশনটির প্রধান() ফাংশনটি কার্যকর হওয়ার আগে এই ফাংশনটি স্বয়ংক্রিয়ভাবে কার্যকর হয়।
    CoreResetP আউটপুট সংকেত MSS_HPMS_READY প্রারম্ভিক প্রক্রিয়ার শুরুতে জোর দেওয়া হয়, যা নির্দেশ করে যে MSS এবং সমস্ত পেরিফেরাল (MDDR ছাড়া) যোগাযোগের জন্য প্রস্তুত।
  2. SystemInit() ফাংশন MSS FIC_2 APB3 বাসের মাধ্যমে DDR কন্ট্রোলার এবং SERDESIF কনফিগারেশন রেজিস্টারগুলিতে কনফিগারেশন ডেটা লেখে। এই ইন্টারফেসটি FPGA ফ্যাব্রিকে ইনস্ট্যান্টিয়েটেড নরম CoreConfigP কোরের সাথে সংযুক্ত।
  3. সমস্ত রেজিস্টার কনফিগার করার পরে, SystemInit() ফাংশনটি রেজিস্টার কনফিগারেশন পর্বের সমাপ্তি নির্দেশ করতে CoreConfigP কন্ট্রোল রেজিস্টারগুলিতে লিখিত হয়; CoreConfigP আউটপুট সংকেত CONFIG1_DONE এবং CONIG2_DONE তারপর জোর দেওয়া হয়।
    ডিজাইনে ব্যবহৃত পেরিফেরিয়ালগুলির উপর নির্ভর করে রেজিস্টার কনফিগারেশনের দুটি পর্যায় (CONFIG1 এবং CONFIG2) রয়েছে।
  4. যদি এক বা উভয় MDDR/FDDR ব্যবহার করা হয়, এবং SERDESIF ব্লকগুলির একটিও ডিজাইনে ব্যবহার করা না হয়, শুধুমাত্র একটি রেজিস্টার কনফিগারেশন ফেজ আছে। CoreConfigP আউটপুট সিগন্যাল CONFIG1_DONE এবং CONIG2_DONE উভয়ই কোনো অপেক্ষা/বিলম্ব ছাড়াই একের পর এক দাবি করা হয়।
    যদি নন-PCIe মোডে এক বা একাধিক SERDESIF ব্লক ডিজাইনে ব্যবহার করা হয়, তাহলে রেজিস্টার কনফিগারেশনের শুধুমাত্র একটি ফেজ থাকে। CONFIG1_DONE এবং CONIG2_DONE কোনো অপেক্ষা/বিলম্ব ছাড়াই একের পর এক দাবি করা হয়।
    PCIe মোডে এক বা একাধিক SERDESIF ব্লক ডিজাইনে ব্যবহার করা হলে, রেজিস্টার কনফিগারেশনের দুটি ধাপ রয়েছে। CONFIG1_DONE রেজিস্টার কনফিগারেশনের প্রথম ধাপ সম্পূর্ণ হওয়ার পরে দাবি করা হয়। এই পর্বে SERDESIF সিস্টেম এবং লেন রেজিস্টার কনফিগার করা হয়েছে। যদি SERDESIF একটি নন-PCIE মোডে কনফিগার করা হয়, CONFIG2_DONE সংকেতও অবিলম্বে জোর দেওয়া হয়।
  5. রেজিস্টার কনফিগারেশনের দ্বিতীয় পর্যায়টি অনুসরণ করে (যদি SERDESIF PCIE মোডে কনফিগার করা থাকে)। দ্বিতীয় পর্বে ঘটে যাওয়া বিভিন্ন ঘটনা নিম্নরূপ:
    - CoreResetP PHY_RESET_N এবং CORE_RESET_N সংকেতগুলিকে ডি-জার্স্ট করে যা ব্যবহৃত প্রতিটি SERDESIF ব্লকের সাথে সম্পর্কিত৷ সমস্ত SERDESIF ব্লকগুলি পুনরায় সেট করার পরে এটি একটি আউটপুট সংকেত SDIF_RELEASED জোরদার করে৷ এই SDIF_RELEASED সংকেতটি CoreConfigP-কে নির্দেশ করতে ব্যবহৃত হয় যে SERDESIF কোর রিসেটের বাইরে এবং রেজিস্টার কনফিগারেশনের দ্বিতীয় পর্যায়ের জন্য প্রস্তুত।
    – একবার SDIF_RELEASED সংকেত জোরদার করা হলে, SystemInit() ফাংশন PMA_READY-এর দাবির জন্য উপযুক্ত SERDESIF লেনে পোলিং শুরু করে। একবার PMA_READY নিশ্চিত করা হলে, SERDESIF রেজিস্টারের (PCIE রেজিস্টার) দ্বিতীয় সেটটি SystemInit() ফাংশন দ্বারা কনফিগার/লিখিত হয়।
  6. সমস্ত PCIE রেজিস্টার কনফিগার করার পরে, SystemInit() ফাংশনটি রেজিস্টার কনফিগারেশনের দ্বিতীয় পর্বের সমাপ্তি নির্দেশ করার জন্য CoreConfigP নিয়ন্ত্রণ রেজিস্টারে চিঠি দেয়; CoreConfigP আউটপুট সংকেত CONIG2_DONE তারপর জোর দেওয়া হয়।
  7. উপরের সিগন্যাল অ্যাসার্টেশন/ডি-অ্যাসারশন ছাড়াও, CoreResetP নিম্নলিখিত ফাংশনগুলি সম্পাদন করে বিভিন্ন ব্লকের প্রারম্ভিকতা পরিচালনা করে:
    - FDDR কোর রিসেট ডি-জার্টিং
    - SERDESIF ব্লক PHY এবং CORE রিসেট ডি-জার্স্টিং
    - এফডিডিআর পিএলএল (এফপিএলএল) লক সংকেত পর্যবেক্ষণ। FDDR AXI/AHBLite ডেটা ইন্টারফেস এবং FPGA ফ্যাব্রিক সঠিকভাবে যোগাযোগ করতে পারে তা নিশ্চিত করার জন্য FPLL অবশ্যই লক করা থাকতে হবে।
    - SERDESIF ব্লক PLL (SPLL) লক সংকেত পর্যবেক্ষণ। SERDESIF ব্লক করে AXI/AHBLite ইন্টারফেস (PCIe মোড) বা XAUI ইন্টারফেস FPGA ফ্যাব্রিকের সাথে সঠিকভাবে যোগাযোগ করতে পারে তার নিশ্চয়তা দিতে SPLL অবশ্যই লক করা থাকতে হবে।
    - বাহ্যিক DDR স্মৃতিগুলি স্থায়ী হওয়ার জন্য অপেক্ষা করা এবং DDR কন্ট্রোলারদের দ্বারা অ্যাক্সেস করার জন্য প্রস্তুত।
  8. যখন সমস্ত পেরিফেরালগুলি তাদের প্রাথমিককরণ সম্পন্ন করে, তখন CoreResetP INIT_DONE সংকেতকে জোর দেয়; CoreConfigP অভ্যন্তরীণ রেজিস্টার INIT_DONE তারপর জোর দেওয়া হয়।
    যদি MDDR/FDDR-এর একটি বা উভয়ই ব্যবহার করা হয়, এবং DDR প্রারম্ভিক সময় পৌঁছে যায়, CoreResetP আউটপুট সংকেত DDR_READY দৃঢ় করা হয়। এই সংকেত DDR_READY এর দাবী একটি ইঙ্গিত হিসাবে পর্যবেক্ষণ করা যেতে পারে যে DDR (MDDR/FDDR) যোগাযোগের জন্য প্রস্তুত।
    যদি এক বা একাধিক SERDESIF ব্লক ব্যবহার করা হয়, এবং রেজিস্টার কনফিগারেশনের দ্বিতীয় পর্ব সফলভাবে সম্পন্ন হয়, CoreResetP আউটপুট সিগন্যাল SDIF_READY দৃঢ় করা হয়। এই সংকেত SDIF_READY-এর দাবি একটি ইঙ্গিত হিসাবে পর্যবেক্ষণ করা যেতে পারে যে সমস্ত SERDESIF ব্লক যোগাযোগের জন্য প্রস্তুত।
  9. SystemInit() ফাংশন, যা INIT_DONE-এর জন্য অপেক্ষা করছে, সম্পূর্ণ হয়, এবং অ্যাপ্লিকেশনের প্রধান() ফাংশনটি কার্যকর হয়। সেই সময়ে, সমস্ত ব্যবহৃত DDR কন্ট্রোলার এবং SERDESIF ব্লকগুলি শুরু করা হয়েছে, এবং ফার্মওয়্যার অ্যাপ্লিকেশন এবং FPGA ফ্যাব্রিক লজিক তাদের সাথে নির্ভরযোগ্যভাবে যোগাযোগ করতে পারে।

এই নথিতে বর্ণিত পদ্ধতিটি কর্টেক্স-এম 3-এর উপর নির্ভর করে যা অ্যাপ্লিকেশনের প্রধান() ফাংশনের আগে কার্যকর করা সিস্টেম ইনিশিয়ালাইজেশন কোডের অংশ হিসাবে প্রারম্ভিক প্রক্রিয়াটি সম্পাদন করে।
FDDR/MDDR, SEREDES (নন-PCIe মোড) এবং SERDES (PCIe মোড) এর প্রাথমিক ধাপগুলির জন্য চিত্র 1-1, চিত্র 1-2 এবং চিত্র 1-3-এ ফ্লো চার্ট দেখুন।
চিত্র 1-4 একটি পেরিফেরাল ইনিশিয়ালাইজেশন টাইমিং ডায়াগ্রাম দেখায়।

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - টাইমিং ডায়াগ্রাম 1 মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - টাইমিং ডায়াগ্রাম 2

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - টাইমিং ডায়াগ্রাম 3মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - টাইমিং ডায়াগ্রাম 4চিত্র 1-3 • SERDESIF (PCIe) ইনিশিয়ালাইজেশন ফ্লো চার্ট
এই নথিতে বর্ণিত প্রারম্ভিক পদ্ধতির জন্য আপনাকে প্রারম্ভিক প্রক্রিয়া চলাকালীন Cortex-M3 চালাতে হবে, এমনকি যদি আপনি Cortex-M3 এ কোনো কোড চালানোর পরিকল্পনা না করেন। আপনাকে অবশ্যই একটি মৌলিক ফার্মওয়্যার অ্যাপ্লিকেশন তৈরি করতে হবে যা কিছুই করে না (একটি সাধারণ লুপ, প্রাক্তনample) এবং এমবেডেড নন-ভোলাটাইল মেমোরিতে (eNVM) এক্সিকিউটেবল লোড করুন যাতে Cortex-M3 বুট হওয়ার সময় DDR কন্ট্রোলার এবং SERDESIF ব্লকগুলি শুরু হয়।

DDR এবং SERDESIF ব্লক ব্যবহার করে একটি ডিজাইন তৈরি করতে সিস্টেম বিল্ডার ব্যবহার করে

SmartFusion2 সিস্টেম বিল্ডার হল একটি শক্তিশালী ডিজাইন টুল যা আপনাকে আপনার সিস্টেম-স্তরের প্রয়োজনীয়তাগুলি ক্যাপচার করতে সাহায্য করে এবং সেই প্রয়োজনীয়তাগুলিকে বাস্তবায়ন করে একটি ডিজাইন তৈরি করে৷ সিস্টেম বিল্ডারের একটি অত্যন্ত গুরুত্বপূর্ণ কাজ হল পেরিফেরাল ইনিশিয়ালাইজেশন সাব-সিস্টেম স্বয়ংক্রিয়ভাবে তৈরি করা। "DDR এবং SERDESIF ব্লক ব্যবহার করে একটি ডিজাইন তৈরি করতে SmartDesign ব্যবহার করে" পৃষ্ঠা 17-এ বিশদভাবে বর্ণনা করা হয়েছে কিভাবে সিস্টেম বিল্ডার ছাড়াই এমন একটি সমাধান তৈরি করা যায়।
আপনি যদি সিস্টেম বিল্ডার ব্যবহার করেন, তাহলে আপনাকে অবশ্যই একটি ডিজাইন তৈরি করতে নিম্নলিখিত কাজগুলি সম্পাদন করতে হবে যা আপনার ডিডিআর কন্ট্রোলার এবং SERDESIF ব্লকগুলিকে পাওয়ার আপে শুরু করবে:

  1. ডিভাইস বৈশিষ্ট্য পৃষ্ঠায় (চিত্র 2-1), কোন DDR কন্ট্রোলার ব্যবহার করা হয় এবং আপনার ডিজাইনে কতগুলি SERDESIF ব্লক ব্যবহার করা হয় তা উল্লেখ করুন।
  2. মেমরি পৃষ্ঠায়, আপনার বাহ্যিক ডিডিআর স্মৃতির জন্য DDR (DDR2/DDR3/LPDDR) এবং কনফিগারেশন ডেটার ধরন উল্লেখ করুন। বিস্তারিত জানার জন্য মেমরি পৃষ্ঠা বিভাগটি দেখুন।
  3. পেরিফেরাল পৃষ্ঠায়, ফেব্রিক ডিডিআর সাবসিস্টেম এবং/অথবা এমএসএস ডিডিআর এফআইসি সাবসিস্টেমে (ঐচ্ছিক) AHBLite/AXI হিসাবে কনফিগার করা ফ্যাব্রিক মাস্টার যোগ করুন।
  4. ঘড়ি সেটিংস পৃষ্ঠায়, DDR সাব-সিস্টেমের জন্য ঘড়ির ফ্রিকোয়েন্সি নির্দিষ্ট করুন।
  5. আপনার ডিজাইন স্পেসিফিকেশন সম্পূর্ণ করুন এবং ফিনিশ এ ক্লিক করুন। এটি 'ইনিশিয়ালাইজেশন' সমাধানের জন্য প্রয়োজনীয় যুক্তি সহ সিস্টেম বিল্ডারের তৈরি ডিজাইন তৈরি করে।
  6. আপনি যদি SERDESIF ব্লকগুলি ব্যবহার করেন তবে আপনাকে অবশ্যই আপনার ডিজাইনে SERDESIF ব্লকগুলিকে ইনস্ট্যান্টিয়েট করতে হবে এবং সিস্টেম বিল্ডার জেনারেট করা কোরের সাথে তাদের প্রারম্ভিক পোর্টগুলিকে সংযুক্ত করতে হবে৷

সিস্টেম বিল্ডার ডিভাইস বৈশিষ্ট্য পৃষ্ঠা
ডিভাইস বৈশিষ্ট্য পৃষ্ঠায়, কোন DDR কন্ট্রোলার (MDDR এবং/অথবা FDDR) ব্যবহার করা হয়েছে এবং আপনার ডিজাইনে কতগুলি SERDESIF ব্লক ব্যবহার করা হয়েছে তা উল্লেখ করুন (চিত্র 2-1)।

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - ডিভাইস বৈশিষ্ট্য পৃষ্ঠাচিত্র 2-1 • সিস্টেম বিল্ডার ডিভাইস বৈশিষ্ট্য পৃষ্ঠা

সিস্টেম বিল্ডার মেমরি পৃষ্ঠা
MSS DDR (MDDR) বা Fabric DDR (FDDR) ব্যবহার করতে, ড্রপ-ডাউন তালিকা থেকে মেমরি টাইপ নির্বাচন করুন (চিত্র 2-2)।

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - বাহ্যিক মেমরিচিত্র 2-2 • MSS বাহ্যিক মেমরি

আপনাকে অবশ্যই:

  1. DDR প্রকার (DDR2, DDR3 বা LPDDR) নির্বাচন করুন।
  2. DDR মেমরি নিষ্পত্তির সময় সংজ্ঞায়িত করুন। সঠিক মেমরি সেটিং সময় সেট করতে আপনার বাহ্যিক DDR মেমরি স্পেসিফিকেশনের সাথে পরামর্শ করুন। মেমরি সেটলিং সময় সঠিকভাবে সেট না হলে DDR মেমরি সঠিকভাবে আরম্ভ করতে ব্যর্থ হতে পারে।
  3. হয় ডিডিআর রেজিস্টার কনফিগারেশন ডেটা আমদানি করুন বা আপনার ডিডিআর মেমরি প্যারামিটার সেট করুন। বিস্তারিত জানার জন্য, দেখুন মাইক্রোসেমি স্মার্টফিউশন 2 হাই স্পিড সিরিয়াল এবং ডিডিআর ইন্টারফেস ব্যবহারকারীর নির্দেশিকা.

এই ডেটা DDR রেজিস্টার BFM এবং ফার্মওয়্যার কনফিগারেশন তৈরি করতে ব্যবহার করা হয় file26 পৃষ্ঠায় "ফার্মওয়্যার অ্যাপ্লিকেশন তৈরি এবং সংকলন করা" এবং "BFM"-এ বর্ণিত হিসাবে File27 পৃষ্ঠায় ডিজাইনের অনুকরণের জন্য ব্যবহৃত হয়েছে। ডিডিআর কন্ট্রোলার কনফিগারেশন রেজিস্টারের বিস্তারিত জানার জন্য, দেখুন মাইক্রোসেমি স্মার্টফিউশন 2 হাই স্পিড সিরিয়াল এবং ডিডিআর ইন্টারফেস ব্যবহারকারীর নির্দেশিকা।
একজন প্রাক্তনampকনফিগারেশনের লে file সিনট্যাক্স চিত্র 2-3 এ দেখানো হয়েছে। এতে ব্যবহৃত রেজিস্টারের নাম file তে বর্ণিত হিসাবে একই মাইক্রোসেমি স্মার্টফিউশন 2 হাই স্পিড সিরিয়াল এবং ডিডিআর ইন্টারফেস ব্যবহারকারীর নির্দেশিকা

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - File সিনট্যাক্স এক্সampleচিত্র 2-3 • কনফিগারেশন File সিনট্যাক্স এক্সample
সিস্টেম বিল্ডার পেরিফেরাল পৃষ্ঠা
পেরিফেরাল পৃষ্ঠায়, প্রতিটি ডিডিআর কন্ট্রোলারের জন্য একটি পৃথক সাবসিস্টেম তৈরি করা হয় (এফডিডিআরের জন্য ফ্যাব্রিক ডিডিআর সাবসিস্টেম এবং এমডিডিআরের জন্য এমএসএস ডিডিআর এফআইসি সাবসিস্টেম)। আপনি DDR কন্ট্রোলারগুলিতে ফ্যাব্রিক মাস্টার অ্যাক্সেস সক্ষম করতে এই সাবসিস্টেমগুলির প্রতিটিতে একটি ফ্যাব্রিক AMBA মাস্টার (এক্সআই/এএইচবিলাইট হিসাবে কনফিগার করা) কোর যোগ করতে পারেন। প্রজন্মের পরে, সিস্টেম বিল্ডার স্বয়ংক্রিয়ভাবে বাস কোরগুলিকে ইনস্ট্যান্টিয়েট করে (এএমবিএ মাস্টারের যোগ করা ধরণের উপর নির্ভর করে) এবং বাস কোরের মাস্টার BIF এবং ঘড়ি এবং সংশ্লিষ্ট সাবসিস্টেমগুলির (FDDR/MDDR) পিনগুলিকে যথাযথ পিন গ্রুপের অধীনে রিসেট করে, শীর্ষ আপনাকে যা করতে হবে তা হল BIF গুলিকে উপযুক্ত ফ্যাব্রিক মাস্টার কোরের সাথে সংযুক্ত করতে যা আপনি নকশায় তাত্ক্ষণিকভাবে তৈরি করবেন। MDDR-এর ক্ষেত্রে, MSS DDR FIC সাবসিস্টেমে ফ্যাব্রিক AMBA মাস্টার কোর যোগ করা ঐচ্ছিক; Cortex-M3 এই সাবসিস্টেমের একটি ডিফল্ট মাস্টার। চিত্র 2-4 সিস্টেম বিল্ডার পেরিফেরাল পৃষ্ঠা দেখায়।

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - বিল্ডার পেরিফেরাল পৃষ্ঠাচিত্র 2-4 • সিস্টেম বিল্ডার পেরিফেরাল পৃষ্ঠা

সিস্টেম বিল্ডার ঘড়ি সেটিংস পৃষ্ঠা
ক্লক সেটিংস পৃষ্ঠায়, প্রতিটি ডিডিআর কন্ট্রোলারের জন্য, আপনাকে অবশ্যই প্রতিটি ডিডিআর (এমডিডিআর এবং/অথবা এফডিডিআর) সাব-সিস্টেমের সাথে সম্পর্কিত ঘড়ির ফ্রিকোয়েন্সিগুলি নির্দিষ্ট করতে হবে।
MDDR এর জন্য, আপনাকে অবশ্যই উল্লেখ করতে হবে:

  • MDDR_CLK - এই ঘড়িটি ডিডিআর কন্ট্রোলারের অপারেটিং ফ্রিকোয়েন্সি নির্ধারণ করে এবং আপনি আপনার বাহ্যিক ডিডিআর মেমরিতে যে ক্লক ফ্রিকোয়েন্সি চালাতে চান তার সাথে মেলে। এই ঘড়িটিকে M3_CLK (Cortex-M3 এবং MSS প্রধান ঘড়ি, চিত্র 2-5) এর একাধিক হিসাবে সংজ্ঞায়িত করা হয়েছে। MDDR_CLK অবশ্যই 333 MHz এর কম হতে হবে।
  • DDR_FIC_CLK - আপনি যদি FPGA ফ্যাব্রিক থেকে MDDR অ্যাক্সেস করতেও বেছে নেন, তাহলে আপনাকে DDR_FIC_CLK নির্দিষ্ট করতে হবে। এই ঘড়ির ফ্রিকোয়েন্সিটি MDDR_CLK-এর অনুপাত হিসাবে সংজ্ঞায়িত করা হয়েছে এবং FPGA ফ্যাব্রিক সাব-সিস্টেম যে MDDR-এ অ্যাক্সেস করছে সেই ফ্রিকোয়েন্সির সাথে মিল থাকা উচিত।

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - MDDR ঘড়িচিত্র 2-5 • কর্টেক্স-M3 এবং MSS প্রধান ঘড়ি; MDDR ঘড়ি

FDDR এর জন্য, আপনাকে অবশ্যই উল্লেখ করতে হবে:

  • FDDR_CLK - ডিডিআর কন্ট্রোলারের অপারেটিং ফ্রিকোয়েন্সি নির্ধারণ করে এবং ঘড়ির ফ্রিকোয়েন্সির সাথে মেলে যে আপনি আপনার বাহ্যিক ডিডিআর মেমরি চালাতে চান। মনে রাখবেন যে এই ঘড়িটি M3_CLK (MSS এবং Cortex-M3 ঘড়ি, চিত্র 2-5) এর একাধিক হিসাবে সংজ্ঞায়িত করা হয়েছে। FDDR_CLK 20 MHz এবং 333 MHz এর মধ্যে হতে হবে।
  • FDDR_SUBSYSTEM_CLK - এই ঘড়ির ফ্রিকোয়েন্সি FDDR_CLK-এর অনুপাত হিসাবে সংজ্ঞায়িত করা হয়েছে এবং FDDR-এ অ্যাক্সেস করা FPGA ফ্যাব্রিক সাব-সিস্টেম যে ফ্রিকোয়েন্সি চলছে তার সাথে মিল থাকা উচিত।

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - ফ্যাব্রিক ডিডিআর ঘড়িচিত্র 2-6 • ফ্যাব্রিক DDR ঘড়ি
SERDESIF কনফিগারেশন
SERDESIF ব্লকগুলি সিস্টেম বিল্ডার জেনারেটেড ডিজাইনে ইনস্ট্যান্ট করা হয় না। যাইহোক, সমস্ত SERDESIF ব্লকের জন্য, সিস্টেম বিল্ডার কোরের ইন্টারফেসে ইনিশিয়ালাইজেশন সিগন্যাল পাওয়া যায় এবং SERDESIF কোরের সাথে সংযুক্ত করা যেতে পারে হায়ারার্কির পরবর্তী স্তরে, যেমনটি চিত্র 2-7 এ দেখানো হয়েছে।মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - পেরিফেরাল ইনিশিয়ালাইজেশন কানেক্টিভিটিচিত্র 2-7 • SERDESIF পেরিফেরাল ইনিশিয়ালাইজেশন সংযোগ
ডিডিআর কনফিগারেশন রেজিস্টারের মতো, প্রতিটি SERDES ব্লকের কনফিগারেশন রেজিস্টারও রয়েছে যা রানটাইমে লোড করা আবশ্যক। আপনি হয় এই রেজিস্টার মানগুলি আমদানি করতে পারেন বা আপনার PCIe বা EPCS পরামিতিগুলি প্রবেশ করতে হাই স্পিড সিরিয়াল ইন্টারফেস কনফিগারেশন (চিত্র 2-8) ব্যবহার করতে পারেন এবং নিবন্ধিত মানগুলি আপনার জন্য স্বয়ংক্রিয়ভাবে গণনা করা হয়৷ বিস্তারিত জানার জন্য, দেখুন SERDES কনফিগারার ব্যবহারকারীর নির্দেশিকা.মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - সিরিয়াল ইন্টারফেস কনফিগারেটরচিত্র 2-8 • উচ্চ গতির সিরিয়াল ইন্টারফেস কনফিগারার
একবার আপনি সিস্টেম বিল্ডার ব্লক এবং SERDES ব্লকের সাথে আপনার ব্যবহারকারীর যুক্তিকে একীভূত করলে, আপনি আপনার শীর্ষ স্তরের স্মার্টডিজাইন তৈরি করতে পারেন। এটি সমস্ত এইচডিএল এবং বিএফএম তৈরি করে fileআপনার নকশা বাস্তবায়ন এবং অনুকরণ করার জন্য প্রয়োজনীয়। তারপর আপনি ডিজাইন ফ্লো বাকি সঙ্গে এগিয়ে যেতে পারেন.

DDR এবং SERDESIF ব্লক ব্যবহার করে একটি ডিজাইন তৈরি করতে SmartDesign ব্যবহার করা

এই বিভাগটি বর্ণনা করে কিভাবে SmartFusion2 সিস্টেম বিল্ডার ব্যবহার না করে একটি সম্পূর্ণ 'ইনিশিয়ালাইজেশন' সমাধান একসাথে রাখা যায়। লক্ষ্য হল আপনাকে বুঝতে সাহায্য করা যে আপনি যদি সিস্টেম বিল্ডার ব্যবহার করতে না চান তাহলে আপনাকে কি করতে হবে। সিস্টেম বিল্ডার টুলটি আসলে আপনার জন্য কী তৈরি করে তাও এই বিভাগটি বর্ণনা করে। এই বিভাগটি বর্ণনা করে কিভাবে:

  • DDR কন্ট্রোলার এবং SERDESIF কনফিগারেশন রেজিস্টারের জন্য কনফিগারেশন ডেটা ইনপুট করুন।
  • DDR কন্ট্রোলার এবং SERDESIF কনফিগারেশন রেজিস্টারগুলিতে কনফিগারেশন ডেটা স্থানান্তর করার জন্য প্রয়োজনীয় ফ্যাব্রিক কোরগুলিকে তাত্ক্ষণিক করুন এবং সংযুক্ত করুন।

DDR কন্ট্রোলার কনফিগারেশন
এমএসএস ডিডিআর (এমডিডিআর) এবং ফ্যাব্রিক ডিডিআর (এফডিডিআর) কন্ট্রোলারগুলি অবশ্যই বাহ্যিক ডিডিআর মেমরি কনফিগারেশন প্রয়োজনীয়তা (ডিডিআর মোড, পিএইচওয়াই প্রস্থ, বিস্ফোরণ মোড, ইসিসি, ইত্যাদি) মেলে গতিশীলভাবে (রানটাইমে) কনফিগার করতে হবে। MDDR/FDDR কনফিগারেশনে প্রবেশ করা ডেটা CMSIS SystemInit() ফাংশন দ্বারা DDR কন্ট্রোলার কনফিগারেশন রেজিস্টারে লেখা হয়। কনফিগারেশনের বিভিন্ন ধরণের কনফিগারেশন ডেটা প্রবেশের জন্য কনফিগারারের তিনটি ভিন্ন ট্যাব রয়েছে:

  • সাধারণ ডেটা (ডিডিআর মোড, ডেটা প্রস্থ, ঘড়ির ফ্রিকোয়েন্সি, ইসিসি, ফ্যাব্রিক ইন্টারফেস, ড্রাইভের শক্তি)
  • মেমরি ইনিশিয়ালাইজেশন ডেটা (বার্স্ট লেন্থ, বার্স্ট অর্ডার, টাইমিং মোড, লেটেন্সি ইত্যাদি)
  • মেমরি টাইমিং ডেটা

আপনার বাহ্যিক ডিডিআর মেমরির স্পেসিফিকেশন পড়ুন এবং আপনার বাহ্যিক ডিডিআর মেমরির প্রয়োজনীয়তা মেলে ডিডিআর কন্ট্রোলার কনফিগার করুন।
ডিডিআর কনফিগারেশনের বিস্তারিত জানার জন্য, দেখুন SmartFusion2 MSS DDR কনফিগারেশন ব্যবহারকারীর নির্দেশিকা।
SERDESIF কনফিগারেশন
SERDES কনফিগার করতে কনফিগারটর খুলতে SmartDesign ক্যানভাসে SERDES ব্লকে ডাবল-ক্লিক করুন (চিত্র 3-1)। আপনি হয় এই রেজিস্টার মানগুলি আমদানি করতে পারেন বা আপনার PCIe বা EPCS পরামিতিগুলি প্রবেশ করতে SERDES কনফিগারেশন ব্যবহার করতে পারেন এবং নিবন্ধন মানগুলি আপনার জন্য স্বয়ংক্রিয়ভাবে গণনা করা হয়৷ বিস্তারিত জানার জন্য, দেখুন SERDES কনফিগারার ব্যবহারকারীর নির্দেশিকা.মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - হাই স্পিড সিরিয়াল ইন্টারফেস কনফিগারেশনচিত্র 3-1 • উচ্চ গতির সিরিয়াল ইন্টারফেস কনফিগারার
FPGA ডিজাইন ইনিশিয়ালাইজেশন সাব-সিস্টেম তৈরি করা
DDR এবং SERDESIF ব্লকগুলি আরম্ভ করার জন্য, আপনাকে FPGA ফ্যাব্রিকে ইনিশিয়ালাইজেশন সাবসিস্টেম তৈরি করতে হবে। FPGA ফ্যাব্রিক ইনিশিয়ালাইজেশন সাবসিস্টেম Cortex-M3 থেকে DDR এবং SERDESIF কনফিগারেশন রেজিস্টারে ডেটা স্থানান্তর করে, এই ব্লকগুলির জন্য প্রয়োজনীয় রিসেট সিকোয়েন্সগুলি পরিচালনা করে এবং সংকেত দেয় যখন এই ব্লকগুলি আপনার বাকি ডিজাইনের সাথে যোগাযোগের জন্য প্রস্তুত থাকে। প্রারম্ভিক সাবসিস্টেম তৈরি করতে, আপনাকে অবশ্যই:

  • MSS এর ভিতরে FIC_2 কনফিগার করুন
  • CoreConfigP এবং CoreResetP কোরগুলিকে ইনস্ট্যান্ট এবং কনফিগার করুন
  • অন-চিপ 25/50MHz RC অসিলেটর চালু করুন
  • সিস্টেম রিসেট (SYSRESET) ম্যাক্রো ইনস্ট্যান্টিয়েট করুন
  • প্রতিটি পেরিফেরালের কনফিগারেশন ইন্টারফেস, ঘড়ি, রিসেট এবং পিএলএল লক পোর্টের সাথে এই উপাদানগুলিকে সংযুক্ত করুন

MSS FIC_2 APB কনফিগারেশন
MSS FIC_2 কনফিগার করতে:

  1. MSS কনফিগারেশন থেকে FIC_2 কনফিগারেটর ডায়ালগ বক্স খুলুন (চিত্র 3-2)।
  2. Cortex-M3 ব্যবহার করে ইনিশিয়ালাইজ পেরিফেরাল নির্বাচন করুন।
  3. আপনার সিস্টেমের উপর নির্ভর করে, নিম্নলিখিত একটি বা উভয় চেকবক্স চেক করুন:
    - এমএসএস ডিডিআর
    - ফ্যাব্রিক DDR এবং/অথবা SERDES ব্লক
  4. ঠিক আছে ক্লিক করুন এবং MSS তৈরি করতে এগিয়ে যান (আপনি আপনার ডিজাইনের প্রয়োজনীয়তা অনুসারে MSS সম্পূর্ণরূপে কনফিগার না করা পর্যন্ত আপনি এই ক্রিয়াটি পিছিয়ে দিতে পারেন)। FIC_2 পোর্টগুলি (FIC_2_APB_MASTER, FIC_2_APB_M_PCLK এবং FIC_2_APB_M_RESET_N) এখন MSS ইন্টারফেসে উন্মুক্ত করা হয়েছে এবং CoreConfigP এবং CoreResetP কোরের সাথে সংযুক্ত করা যেতে পারে।

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - এমএসএস এফআইসি 2 কনফিগারারচিত্র 3-2 • MSS FIC_2 কনফিগারার

CoreConfigP
CoreConfigP কনফিগার করতে:

  1. আপনার স্মার্টডিজাইনে CoreConfigP ইনস্ট্যান্টিয়েট করুন (সাধারণত যেখানে MSS ইনস্ট্যান্ট করা হয়)।
    এই কোরটি Libero ক্যাটালগে (পেরিফেরালের অধীনে) পাওয়া যাবে।
  2. কনফিগারেশন খুলতে কোরটিতে ডাবল ক্লিক করুন।
  3. কোন পেরিফেরালগুলিকে আরম্ভ করতে হবে তা নির্দিষ্ট করতে কোরটি কনফিগার করুন (চিত্র 3-3)

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - ডায়ালগ বক্সচিত্র 3-3 • CoreConfigP ডায়ালগ বক্স

CoreResetP
CoreResetP কনফিগার করতে:

  1. আপনার স্মার্টডিজাইনে CoreResetP ইনস্ট্যান্টিয়েট করুন (সাধারণত যেখানে MSS ইনস্ট্যান্ট করা হয়)।
    এই কোরটি পেরিফেরালের অধীনে Libero ক্যাটালগে পাওয়া যাবে।
  2. কনফিগারটর খুলতে স্মার্টডিজাইন ক্যানভাসের ভিতরের কোরটিতে ডাবল ক্লিক করুন (চিত্র 3-4)।
  3. মূলটি এতে কনফিগার করুন:
    - বাহ্যিক রিসেট আচরণ নির্দিষ্ট করুন (EXT_RESET_OUT দাবি করা হয়েছে)। চারটি বিকল্পের মধ্যে একটি বেছে নিন:
    o EXT_RESET_OUT কখনই দাবি করা হয় না৷
    o EXT_RESET_OUT দাবি করা হয় যদি পাওয়ার আপ রিসেট (POWER_ON_RESET_N) জোরদার করা হয়
    o EXT_RESET_OUT দাবি করা হয় যদি FAB_RESET_N দাবি করা হয়
    o EXT_RESET_OUT দাবি করা হয় যদি পাওয়ার আপ রিসেট (POWER_ON_RESET_N) বা FAB_RESET_N দাবি করা হয়
    - ডিভাইস ভলিউম নির্দিষ্ট করুনtage নির্বাচিত মান ভলিউমের সাথে মেলেtage আপনি Libero প্রজেক্ট সেটিংস ডায়ালগ বক্সে নির্বাচন করেছেন।
    - আপনি আপনার ডিজাইনে কোন পেরিফেরালগুলি ব্যবহার করছেন তা নির্দেশ করতে উপযুক্ত চেকবক্সগুলি চেক করুন৷
    - বাহ্যিক DDR মেমরি সেটিং সময় নির্দিষ্ট করুন। এটি আপনার অ্যাপ্লিকেশনে (MDDR এবং FDDR) ব্যবহৃত সমস্ত DDR স্মৃতির জন্য সর্বাধিক মান। এই পরামিতি কনফিগার করতে বাহ্যিক DDR মেমরি বিক্রেতা ডেটাশীট পড়ুন। 200us হল 2MHz এ চলমান DDR3 এবং DDR200 স্মৃতির জন্য একটি ভাল ডিফল্ট মান। এটি একটি কার্যকরী সিমুলেশন এবং সিলিকনে একটি কার্যকরী সিস্টেমের গ্যারান্টি দেওয়ার জন্য একটি অত্যন্ত গুরুত্বপূর্ণ পরামিতি। নিষ্পত্তির সময়ের জন্য একটি ভুল মান সিমুলেশন ত্রুটি হতে পারে। এই পরামিতি কনফিগার করতে DDR মেমরি বিক্রেতা ডেটাশীট পড়ুন।
    - আপনার ডিজাইনের প্রতিটি SERDES ব্লকের জন্য, উপযুক্ত বাক্সে চেক করুন তা নির্দেশ করতে:
    o PCIe ব্যবহার করা হয়
    o PCIe হট রিসেটের জন্য সমর্থন প্রয়োজন
    o PCIe L2/P2 এর জন্য সমর্থন প্রয়োজন

দ্রষ্টব্য: আপনি যদি 090 ডাই(M2S090) ব্যবহার করেন এবং আপনার ডিজাইনে SERDESIF ব্যবহার করা হয়, তাহলে আপনাকে নিম্নলিখিত কোনো চেকবক্স চেক করতে হবে না: 'PCIe-এর জন্য ব্যবহৃত', 'PCIe HotReset সমর্থন অন্তর্ভুক্ত করুন' এবং 'PCIe L2/P2 সমর্থন অন্তর্ভুক্ত করুন'। আপনি যদি কোনো নন-090 ডিভাইস ব্যবহার করেন এবং এক বা একাধিক SERDESIF ব্লক ব্যবহার করেন, তাহলে আপনাকে উপযুক্ত SERDESIF বিভাগের অধীনে চারটি চেকবক্স চেক করতে হবে।
দ্রষ্টব্য: এই কনফিগারেটে আপনার জন্য উপলব্ধ বিকল্পগুলির বিশদ বিবরণের জন্য, CoreResetP হ্যান্ডবুক পড়ুন।

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - কোররেসেটপিকনফিগারটরচিত্র 3-4 • CoreResetPCconfigurator

25/50MHz অসিলেটর ইন্সট্যান্টিয়েশন
CoreConfigP এবং CoreResetP অন-চিপ 25/50MHz RC অসিলেটর দ্বারা ক্লক করা হয়। আপনাকে অবশ্যই একটি 25/50MHz অসিলেটর ইনস্ট্যান্টিয়েট করতে হবে এবং এটি এই কোরের সাথে সংযুক্ত করতে হবে।

  1. আপনার স্মার্টডিজাইনে চিপ অসিলেটর কোর ইনস্ট্যান্টিয়েট করুন (সাধারণত যেখানে MSS ইনস্ট্যান্ট করা হয়)। এই কোরটি ক্লক অ্যান্ড ম্যানেজমেন্টের অধীনে Libero ক্যাটালগে পাওয়া যাবে।
  2. এই কোরটি এমনভাবে কনফিগার করুন যাতে RC অসিলেটর FPGA ফ্যাব্রিক চালায়, যেমন চিত্র 3-5 এ দেখানো হয়েছে।

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - অসিলেটর কনফিগারেটরচিত্র 3-5 • চিপ অসিলেটর কনফিগারার

সিস্টেম রিসেট (SYSRESET) ইনস্ট্যান্টিয়েশন
SYSRESET ম্যাক্রো আপনার ডিজাইনে ডিভাইস লেভেল রিসেট কার্যকারিতা প্রদান করে। POWER_ON_RESET_N আউটপুট সিগন্যাল যখনই চিপ চালিত হয় বা বহিরাগত পিন DEVRST_N জোরদার/ডি-অ্যাসার্টেড হয় (চিত্র 3-6)।
SYSRESET ম্যাক্রোকে আপনার SmartDesign এ ইনস্ট্যান্টিয়েট করুন (সাধারণত যেখানে MSS ইনস্ট্যান্ট করা হয়)। এই ম্যাক্রোটি ম্যাক্রো লাইব্রেরির অধীনে Libero ক্যাটালগে পাওয়া যাবে। এই ম্যাক্রোর কোন কনফিগারেশনের প্রয়োজন নেই।

Microsemi SmartFusion2 DDR কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - SYSRESET ম্যাক্রোচিত্র 3-6 • SYSRESET ম্যাক্রো

সামগ্রিক সংযোগ
আপনি আপনার ডিজাইনে MSS, FDDR, SERDESIF, OSC, SYSRESET, CoreConfigP এবং CoreResetP কোরগুলিকে ইনস্ট্যান্ট এবং কনফিগার করার পরে, আপনাকে পেরিফেরাল ইনিশিয়ালাইজেশন সাবসিস্টেম তৈরি করতে সেগুলিকে সংযুক্ত করতে হবে। এই নথিতে সংযোগের বিবরণ সহজ করার জন্য, এটি CoreConfigP এবং CoreResetP সম্পর্কিত সংযোগগুলির সাথে যুক্ত APB3 অনুগত কনফিগারেশন ডেটা পাথ সংযোগে বিভক্ত।
কনফিগারেশন ডেটা পাথ সংযোগ
চিত্র 3-7 দেখায় কিভাবে CoreConfigP-কে MSS FIC_2 সংকেত এবং পেরিফেরালগুলির APB3 সম্মত কনফিগারেশন ইন্টারফেসের সাথে সংযোগ করতে হয়।
টেবিল 3-1 • কনফিগারেশন ডেটা পাথ পোর্ট/বিআইএফ সংযোগ

থেকে
পোর্ট/বাস ইন্টারফেস
(BIF)/ কম্পোনেন্ট
TO
পোর্ট/বাস ইন্টারফেস (BIF)/কম্পোনেন্ট
APB S প্রিসেট N/ CoreConfigP APB S প্রিসেট N/ SDIF<0/1/2/3> এপিবি এস প্রিসেট এন/
এফডিডিআর
MDDR APB S Prese TN/MSS
APB S PCLK/ CoreConfigP এপিবি এস পিসিএলকে/এসডিআইএফ এপিবি এস পিসিএলকে/এফডিডিআর MDDR APB S POLK/ MSS
MDDR APBmslave/ CoreConfig এমডিডিআর এপিবি স্লেভ (বিআইএফ)/এমএসএস
SDIF<0/1/2/ 3> APBmslave/কনফিগ APB স্লেভ (BIF)/ SDIF<0/1/2/3>
FDDR APBmslave APB স্লেভ (BIF)/ FDDR
FIC 2 APBmmaster/ CoreConfigP এফআইসি 2 এপিবি মাস্টার/এমএসএস

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - সাব-সিস্টেম সংযোগচিত্র 3-7 • FIC_2 APB3 সাব-সিস্টেম সংযোগ

ঘড়ি এবং সংযোগ পুনরায় সেট করুন
চিত্র 3-8 দেখায় কিভাবে বাহ্যিক রিসেট উত্স এবং পেরিফেরালগুলির মূল রিসেট সংকেতগুলির সাথে CoreResetP সংযোগ করতে হয়৷ এটি পেরিফেরালের ঘড়ি সিঙ্ক্রোনাইজেশন স্ট্যাটাস সিগন্যাল (পিএলএল লক সিগন্যাল) এর সাথে CoreResetP-কে কীভাবে সংযুক্ত করতে হয় তাও দেখায়। উপরন্তু, এটি দেখায় কিভাবে CoreConfigP এবং CoreResetP সংযুক্ত।

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার - সাব-সিস্টেম কানেক্টিভিটি 2চিত্র 3-8 • কোর SF2 রিসেট সাব-সিস্টেম সংযোগ

ফার্মওয়্যার অ্যাপ্লিকেশন তৈরি এবং কম্পাইল করা

আপনি যখন LiberoSoC (ডিজাইন ফ্লো উইন্ডো> এক্সপোর্ট ফার্মওয়্যার> এক্সপোর্ট ফার্মওয়্যার) থেকে ফার্মওয়্যার রপ্তানি করেন, তখন Libero নিম্নলিখিতগুলি তৈরি করে files মধ্যে /firmware/drivers_config/ sys_config ফোল্ডার:

  • sys_config.c - পেরিফেরাল রেজিস্টারের মান ধরে রাখে এমন ডেটা স্ট্রাকচার ধারণ করে।
  • sys_config.h - ডিজাইনে কোন পেরিফেরালগুলি ব্যবহার করা হয়েছে এবং আরম্ভ করা প্রয়োজন তা নির্দিষ্ট করে #define স্টেটমেন্ট রয়েছে।
  • sys_config_mddr_define.h - রেজিস্টার কনফিগারেশন ডায়ালগ বক্সে প্রবেশ করা MDDR কন্ট্রোলার কনফিগারেশন ডেটা ধারণ করে।
  • sys_config_fddr_define.h - রেজিস্টার কনফিগারেশন ডায়ালগ বক্সে প্রবেশ করা FDDR কন্ট্রোলার কনফিগারেশন ডেটা রয়েছে।
  • sys_config_mss_clocks.h -এই file MSS CCC কনফিগারেটে সংজ্ঞায়িত MSS ক্লক ফ্রিকোয়েন্সি রয়েছে। এই ফ্রিকোয়েন্সিগুলি CMSIS কোড দ্বারা অনেক MSS ড্রাইভারকে সঠিক ঘড়ির তথ্য প্রদানের জন্য ব্যবহার করা হয় যাদের অবশ্যই তাদের পেরিফেরাল ক্লক (PCLK) ফ্রিকোয়েন্সিতে অ্যাক্সেস থাকতে হবে (যেমন, MSS UART বড রেট ডিভাইজারগুলি হল বড রেট এবং PCLK ফ্রিকোয়েন্সির একটি ফাংশন )
  • sys_config_SERDESIF_ .c - SERDESIF_ রয়েছে SERDESIF_ এর সময় প্রদত্ত রেজিস্টার কনফিগারেশন ডেটা নকশা তৈরিতে ব্লক কনফিগারেশন।
  • sys_config_SERDESIF_ .h - রেজিস্টার কনফিগারেশন জোড়ার সংখ্যা এবং PMA_READY (শুধুমাত্র PCIe মোডে) জন্য পোল করা প্রয়োজন এমন লেন নম্বর নির্দিষ্ট করে এমন #define স্টেটমেন্ট রয়েছে।

এগুলো fileCMSIS কোডটি সঠিকভাবে কম্পাইল করার জন্য এবং পেরিফেরাল কনফিগারেশন ডেটা এবং MSS-এর জন্য ঘড়ি কনফিগারেশন তথ্য সহ আপনার বর্তমান নকশা সম্পর্কিত তথ্য ধারণ করার জন্য প্রয়োজনীয়।
এগুলো এডিট করবেন না files ম্যানুয়ালি; প্রতিটি সময় সংশ্লিষ্ট যন্ত্রাংশ/পেরিফেরাল ডিরেক্টরিতে তৈরি করা হয় যখনই সংশ্লিষ্ট পেরিফেরালগুলি ধারণকারী SmartDesign উপাদানগুলি তৈরি হয়। কোনো পেরিফেরালের কনফিগারেশন ডেটাতে কোনো পরিবর্তন করা হলে, আপনাকে ফার্মওয়্যার প্রকল্পগুলি পুনরায় রপ্তানি করতে হবে যাতে আপডেট করা ফার্মওয়্যার files (উপরের তালিকা দেখুন) রপ্তানি করা হয় / firmware/drivers_config/sys_config ফোল্ডার।
আপনি যখন ফার্মওয়্যার রপ্তানি করেন, তখন Libero SoC ফার্মওয়্যার প্রকল্পগুলি তৈরি করে: একটি লাইব্রেরি যেখানে আপনার ডিজাইন কনফিগারেশন files এবং ড্রাইভার কম্পাইল করা হয়.
আপনি যদি প্রকল্প তৈরি করুন চেক করুন চেকবক্স যখন আপনি ফার্মওয়্যার রপ্তানি করেন, একটি সফ্টওয়্যার SoftConsole/IAR/Keil প্রজেক্ট তৈরি করা হয় যাতে আপনি এপ্লিকেশন প্রজেক্ট ধরে রাখতে পারেন যেখানে আপনি main.c এবং ব্যবহারকারী C/H এডিট করতে পারেন files CMSIS কোড সঠিকভাবে কম্পাইল করতে SoftConSole/IAR/Keil প্রজেক্ট খুলুন এবং আপনার হার্ডওয়্যার ডিজাইনের সাথে মেলে আপনার ফার্মওয়্যার অ্যাপ্লিকেশনটি সঠিকভাবে কনফিগার করুন।

বিএফএম Files ডিজাইন সিমুলেট করার জন্য ব্যবহৃত হয়

যখন আপনি আপনার ডিজাইনের সাথে যুক্ত পেরিফেরালগুলি ধারণকারী স্মার্টডিজাইন উপাদানগুলি তৈরি করেন, তখন সিমুলেশন fileগুলি সংশ্লিষ্ট পেরিফেরালগুলির সাথে সম্পর্কিত /সিমুলেশন ডিরেক্টরি:

  • test.bfm - শীর্ষ স্তরের BFM file যা SmartFusion2 MSS Cortex-M3 প্রসেসরের ব্যায়াম করে এমন যেকোনো সিমুলেশনের সময় প্রথম কার্যকর করা হয়। এটি সেই ক্রমে peripheral_init.bfm এবং user.bfm চালায়।
  • MDDR_init.bfm - যদি আপনার ডিজাইন MDDR ব্যবহার করে, Libero এটি তৈরি করে file; এটিতে BFM লেখার কমান্ড রয়েছে যা MSS DDR কন্ট্রোলার রেজিস্টারে আপনার প্রবেশ করা MSS DDR কনফিগারেশন রেজিস্টার ডেটার (এডিট রেজিস্টার ডায়ালগবক্স বা MSS_MDDR GUI ব্যবহার করে) লেখার অনুকরণ করে।
  • FDDR_init.bfm - যদি আপনার ডিজাইন FDDR ব্যবহার করে, Libero এটি তৈরি করে file; এটিতে BFM লিখিত কমান্ড রয়েছে যা ফ্যাব্রিক ডিডিআর কন্ট্রোলার রেজিস্টারে আপনার প্রবেশ করা ফেব্রিক ডিডিআর কনফিগারেশন রেজিস্টার ডেটার অনুকরণ করে (এডিট রেজিস্টার ডায়ালগবক্স বা FDDR GUI ব্যবহার করে)।
  • SERDESIF_ _init.bfm - যদি আপনার ডিজাইন এক বা একাধিক SERDESIF ব্লক ব্যবহার করে, Libero এটি তৈরি করে file প্রতিটি SERDESIF_ এর জন্য ব্যবহৃত ব্লক; এটিতে BFM লেখার কমান্ড রয়েছে যা আপনার প্রবেশ করা SERDESIF কনফিগারেশন রেজিস্টার ডেটার লেখার অনুকরণ করে (এডিট রেজিস্টার ডায়ালগ বক্স ব্যবহার করে বা SERDESIF_ এ GUI) SERDESIF_ এ নিবন্ধন যদি SERDESIF ব্লক PCIe হিসাবে কনফিগার করা হয়, এটি file এছাড়াও কিছু #define স্টেটমেন্ট রয়েছে যা নিখুঁত ক্রমে 2টি রেজিস্টার কনফিগারেশন পর্যায়গুলি সম্পাদনকে নিয়ন্ত্রণ করে।
  • user.bfm - ব্যবহারকারীর কমান্ড ধারণ করে। peripheral_init.bfm সম্পূর্ণ হওয়ার পরে এই কমান্ডগুলি চালানো হয়। এটি সম্পাদনা করুন file আপনার BFM কমান্ড লিখতে।
  • SERDESIF_ _user.bfm - ব্যবহারকারীর কমান্ড ধারণ করে। এটি সম্পাদনা করুন file আপনার BFM কমান্ড লিখতে। আপনি যদি SERDESIF_ কনফিগার করে থাকেন তাহলে এটি ব্যবহার করুন BFM PCIe সিমুলেশন মোডে ব্লক করুন এবং AXI/AHBLite মাস্টার হিসেবে। আপনি যদি SERDESIF_ কনফিগার করে থাকেন RTL সিমুলেশন মোডে ব্লক করুন, আপনার এটির প্রয়োজন হবে না file.

আপনি যখন প্রতিবার সিমুলেশন আহ্বান করেন, নিম্নলিখিত দুটি সিমুলেশন files পুনরায় তৈরি করা হয় আপডেট করা বিষয়বস্তু সহ / সিমুলেশন ডিরেক্টরি:

  • subsystem.bfm - আপনার ডিজাইনে ব্যবহৃত প্রতিটি পেরিফেরালের জন্য #define স্টেটমেন্ট রয়েছে, যা প্রতিটি পেরিফেরালের সাথে সঙ্গতিপূর্ণভাবে কার্যকর করা peripheral_init.bfm-এর নির্দিষ্ট বিভাগটি নির্দিষ্ট করে।
  • operipheral_init.bfm - CMSIS:: SystemInit() ফাংশনটি অনুকরণ করে এমন BFM পদ্ধতি রয়েছে যা আপনি main() পদ্ধতিতে প্রবেশ করার আগে Cortex-M3-এ চালিত হয়। এটি ডিজাইনে ব্যবহৃত যেকোন পেরিফেরালের জন্য কনফিগারেশন ডেটা সঠিক পেরিফেরাল কনফিগারেশন রেজিস্টারে কপি করে এবং তারপরে আপনি এই পেরিফেরালগুলি ব্যবহার করতে পারেন বলে দাবি করার আগে সমস্ত পেরিফেরাল প্রস্তুত হওয়ার জন্য অপেক্ষা করে। এটি MDDR_init.bfm এবং FDDR_init.bfm চালায়।

এগুলো ব্যবহার করে উৎপন্ন হয় files, আপনার ডিজাইনের DDR কন্ট্রোলারগুলি স্বয়ংক্রিয়ভাবে কনফিগার করা হয়েছে, যা একটি SmartFusion2 ডিভাইসে কী ঘটবে তা অনুকরণ করে৷ আপনি user.bfm এডিট করতে পারেন file আপনার নকশা অনুকরণ করার জন্য প্রয়োজনীয় যেকোনো কমান্ড যোগ করতে (কর্টেক্স-এম 3 হল মাস্টার)। পেরিফেরিয়ালগুলি শুরু করার পরে এই কমান্ডগুলি কার্যকর করা হয়। test.bfm, subsystem.bfm, peripheral_init.bfm, MDDR_init.bfm, FDDR_init.bfm সম্পাদনা করবেন না files এবং SERDESIF_ _init.bfm files.

পণ্য সমর্থন

মাইক্রোসেমি এসওসি প্রোডাক্ট গ্রুপ গ্রাহক পরিষেবা, গ্রাহক প্রযুক্তিগত সহায়তা কেন্দ্র, একটি সহ বিভিন্ন সহায়তা পরিষেবাগুলির সাথে তার পণ্যগুলিকে সমর্থন করে webসাইট, ইলেকট্রনিক মেল, এবং বিশ্বব্যাপী বিক্রয় অফিস।
এই পরিশিষ্টে Microsemi SoC পণ্য গ্রুপের সাথে যোগাযোগ করা এবং এই সহায়তা পরিষেবাগুলি ব্যবহার করার তথ্য রয়েছে৷
গ্রাহক সেবা
অ-প্রযুক্তিগত পণ্য সহায়তার জন্য গ্রাহক পরিষেবার সাথে যোগাযোগ করুন, যেমন পণ্যের মূল্য নির্ধারণ, পণ্য আপগ্রেড, আপডেট তথ্য, অর্ডার স্থিতি এবং অনুমোদন।
উত্তর আমেরিকা থেকে, কল 800.262.1060
বিশ্বের বাকি অংশ থেকে, কল 650.318.4460
ফ্যাক্স, বিশ্বের যে কোন জায়গা থেকে, 408.643.6913
গ্রাহক প্রযুক্তিগত সহায়তা কেন্দ্র
মাইক্রোসেমি SoC প্রোডাক্টস গ্রুপ তার কাস্টমার টেকনিক্যাল সাপোর্ট সেন্টারে অত্যন্ত দক্ষ ইঞ্জিনিয়ারদের সাথে কাজ করে যারা আপনার হার্ডওয়্যার, সফ্টওয়্যার এবং মাইক্রোসেমি SoC প্রোডাক্ট সম্পর্কে ডিজাইন করা প্রশ্নের উত্তর দিতে সাহায্য করতে পারে। গ্রাহক প্রযুক্তিগত সহায়তা কেন্দ্র অ্যাপ্লিকেশন নোট তৈরি করতে, সাধারণ নকশা চক্রের প্রশ্নের উত্তর, পরিচিত সমস্যাগুলির ডকুমেন্টেশন এবং বিভিন্ন FAQ তৈরি করতে প্রচুর সময় ব্যয় করে। সুতরাং, আপনি আমাদের সাথে যোগাযোগ করার আগে, আমাদের অনলাইন সংস্থান দেখুন। এটা খুব সম্ভবত আমরা ইতিমধ্যেই আপনার প্রশ্নের উত্তর দিয়েছি।
প্রযুক্তিগত সহায়তা
কাস্টমার সাপোর্টে যান webসাইট (www.microsemi.com/soc/support/search/default.aspx) আরও তথ্য এবং সমর্থনের জন্য। অনুসন্ধানযোগ্য অনেক উত্তর পাওয়া যায় web সম্পদের মধ্যে রয়েছে ডায়াগ্রাম, চিত্র, এবং অন্যান্য সম্পদের লিঙ্ক webসাইট
Webসাইট
আপনি SoC হোম পেজে বিভিন্ন প্রযুক্তিগত এবং অ-প্রযুক্তিগত তথ্য ব্রাউজ করতে পারেন, এ www.microsemi.com/soc.
গ্রাহক প্রযুক্তিগত সহায়তা কেন্দ্রের সাথে যোগাযোগ করা হচ্ছে
প্রযুক্তিগত সহায়তা কেন্দ্রে অত্যন্ত দক্ষ প্রকৌশলী কর্মীরা। প্রযুক্তিগত সহায়তা কেন্দ্রের সাথে ইমেল বা মাইক্রোসেমি SoC পণ্য গ্রুপের মাধ্যমে যোগাযোগ করা যেতে পারে webসাইট
ইমেইল
আপনি আপনার প্রযুক্তিগত প্রশ্নগুলি আমাদের ইমেল ঠিকানায় যোগাযোগ করতে পারেন এবং ইমেল, ফ্যাক্স বা ফোনের মাধ্যমে উত্তর পেতে পারেন৷ এছাড়াও, যদি আপনার ডিজাইনের সমস্যা থাকে তবে আপনি আপনার ডিজাইন ইমেল করতে পারেন files সহায়তা পেতে.
আমরা সারা দিন ক্রমাগত ইমেল অ্যাকাউন্ট নিরীক্ষণ করি। আমাদের কাছে আপনার অনুরোধ পাঠানোর সময়, আপনার অনুরোধের দক্ষ প্রক্রিয়াকরণের জন্য আপনার সম্পূর্ণ নাম, কোম্পানির নাম এবং আপনার যোগাযোগের তথ্য অন্তর্ভুক্ত করতে ভুলবেন না।
প্রযুক্তিগত সহায়তা ইমেল ঠিকানা হয় soc_tech@microsemi.com.
আমার মামলা
মাইক্রোসেমি এসওসি প্রোডাক্টস গ্রুপের গ্রাহকরা অনলাইনে গিয়ে প্রযুক্তিগত কেস জমা দিতে এবং ট্র্যাক করতে পারেন আমার মামলা.
মার্কিন যুক্তরাষ্ট্রের বাইরে
মার্কিন টাইম জোনের বাইরে যে গ্রাহকদের সহায়তা প্রয়োজন তারা হয় ইমেলের মাধ্যমে প্রযুক্তিগত সহায়তার সাথে যোগাযোগ করতে পারেন (soc_tech@microsemi.com) অথবা একটি স্থানীয় বিক্রয় অফিসে যোগাযোগ করুন। বিক্রয় অফিস তালিকা পাওয়া যাবে www.microsemi.com/soc/company/contact/default.aspx.
ITAR প্রযুক্তিগত সহায়তা
আন্তর্জাতিক ট্রাফিক ইন আর্মস রেগুলেশনস (ITAR) দ্বারা নিয়ন্ত্রিত RH এবং RT FPGA-তে প্রযুক্তিগত সহায়তার জন্য, এর মাধ্যমে আমাদের সাথে যোগাযোগ করুন soc_tech_itar@microsemi.com. বিকল্পভাবে, My Cases-এর মধ্যে, ITAR ড্রপ-ডাউন তালিকায় হ্যাঁ নির্বাচন করুন। ITAR-নিয়ন্ত্রিত Microsemi FPGA-এর সম্পূর্ণ তালিকার জন্য, ITAR-এ যান web পৃষ্ঠা
মাইক্রোসেমি কর্পোরেশন (NASDAQ: MSCC) এর জন্য সেমিকন্ডাক্টর সমাধানগুলির একটি বিস্তৃত পোর্টফোলিও অফার করে: মহাকাশ, প্রতিরক্ষা এবং নিরাপত্তা; এন্টারপ্রাইজ এবং যোগাযোগ; এবং শিল্প এবং বিকল্প শক্তি বাজার. পণ্যগুলির মধ্যে রয়েছে উচ্চ-কর্মক্ষমতা, উচ্চ-নির্ভরযোগ্য অ্যানালগ এবং RF ডিভাইস, মিশ্র সংকেত এবং RF ইন্টিগ্রেটেড সার্কিট, কাস্টমাইজযোগ্য SoCs, FPGAs এবং সম্পূর্ণ সাবসিস্টেম। মাইক্রোসেমির সদর দফতর আলিসো ভিজো, ক্যালিফোর্নিয়াতে। এখানে আরও জানুন www.microsemi.com.
© 2014 মাইক্রোসেমি কর্পোরেশন। সমস্ত অধিকার সংরক্ষিত. মাইক্রোসেমি এবং মাইক্রোসেমি লোগো হল মাইক্রোসেমি কর্পোরেশনের ট্রেডমার্ক। অন্যান্য সমস্ত ট্রেডমার্ক এবং পরিষেবা চিহ্ন তাদের নিজ নিজ মালিকদের সম্পত্তি.

5-02-00384-1/08.14মাইক্রোসেমি লোগোমাইক্রোসেমি কর্পোরেট হেডকোয়ার্টার
One Enterprise, Aliso Viejo CA 92656 USA
মার্কিন যুক্তরাষ্ট্রের মধ্যে: +1 949-380-6100
বিক্রয়: +1 949-380-6136
ফ্যাক্স: +1 949-215-4996

দলিল/সম্পদ

মাইক্রোসেমি স্মার্টফিউশন 2 ডিডিআর কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার [পিডিএফ] ব্যবহারকারীর নির্দেশিকা
SmartFusion2 DDR কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার, SmartFusion2 DDR, কন্ট্রোলার এবং সিরিয়াল হাই স্পিড কন্ট্রোলার, হাই স্পিড কন্ট্রোলার

তথ্যসূত্র

একটি মন্তব্য করুন

আপনার ইমেল ঠিকানা প্রকাশ করা হবে না. প্রয়োজনীয় ক্ষেত্রগুলি চিহ্নিত করা হয়েছে *